国产精一区二区_午夜视频99_免费白白视频_中文字幕一区免费

熱門文章> Mysql數(shù)據(jù)庫基礎(chǔ)操作 >

Mysql數(shù)據(jù)庫基礎(chǔ)操作

36氪企服點(diǎn)評小編
2021-05-13 21:47
610次閱讀

     數(shù)據(jù)庫是儲存資料的倉庫。其存儲空間巨大,可存儲數(shù)百萬、千萬、上億條數(shù)據(jù)。但數(shù)據(jù)庫存儲數(shù)據(jù)并非隨意,而是要遵循一定的規(guī)則,否則查詢效率會很低。當(dāng)下網(wǎng)絡(luò)世界就是數(shù)據(jù)世界,有許多來源,如旅行記錄,消費(fèi)記錄,瀏覽網(wǎng)頁,發(fā)送信息等。除文字類型外,圖片,音樂,聲音也是數(shù)據(jù)。那么,在熟練使用數(shù)據(jù)庫的同時,也需要我們對數(shù)據(jù)庫進(jìn)行操作。下面就有小編為您帶來Mysql數(shù)據(jù)庫基礎(chǔ)操作的相關(guān)介紹。

一、DDL操作數(shù)據(jù)庫、表

DDL的概述:

用于操作對象和對象的屬性,這種對象包括數(shù)據(jù)庫本身,以及數(shù)據(jù)庫對象,像:表、視圖等等,DDL對這些對象和屬性的管理和定義具體表現(xiàn)在Create、Drop和Alter上。

1.1、創(chuàng)建數(shù)據(jù)庫和表

==操作數(shù)據(jù)庫==

創(chuàng)建數(shù)據(jù)庫,判斷不存在,再創(chuàng)建,并指定字符集

格式:create database if not exists 數(shù)據(jù)庫名稱 character set 字符集名;

例子:create database if not exists db4 character set gbk;
==操作表==

創(chuàng)建表

create table 表名(    列名1  數(shù)據(jù)類型1,  列名2     數(shù)據(jù)類型2,  ...);

1.2、查詢數(shù)據(jù)庫和表

==操作數(shù)據(jù)庫==

查詢所有數(shù)據(jù)庫:

show databases;

查詢某個數(shù)據(jù)庫的創(chuàng)建語句:

show create database 數(shù)據(jù)庫名稱;

==操作表==

查詢某個數(shù)據(jù)庫中所有的表名稱:

show tables;

查詢表結(jié)構(gòu):

desc 表名;

1.3、修改數(shù)據(jù)庫和表

==操作數(shù)據(jù)庫==

修改數(shù)據(jù)庫的字符集:

alter database 數(shù)據(jù)庫名稱 character set 字符集名稱;

==操作表==

修改表名:

alter table 表名 rename to 新表名;

修改表的字符集:

alter table 表名 character set 字符集名稱;

添加一列:

alter table 表名 add 列表 數(shù)據(jù)類型;

修改列名稱、類型

alter table 表名 change 列名 新列名 新數(shù)據(jù)類型;

alter table 表名 modify 列名 新數(shù)據(jù)類型;

刪除列

alter table 表名 drop 列名;

1.4、刪除數(shù)據(jù)庫和表

==操作數(shù)據(jù)庫==

判斷數(shù)據(jù)庫存在,存在再刪除:

drop database if exists 數(shù)據(jù)庫名稱;

==操作表==

判斷表存在,存在再刪除:

drop table if exists 表名;

Mysql數(shù)據(jù)庫基礎(chǔ)操作數(shù)據(jù)庫基礎(chǔ)操作

二、查詢表中記錄

2.1、基本語法

select         字段列表from        表名列表where        條件列表group by        分組列表having        分組字段order by        排序limit        分頁限定

2.2、基礎(chǔ)查詢

多個字段查詢

select 字段1,字段2,.. from 表名;

去除重復(fù):

select distinct 列名;

計(jì)算列

一般可以使用四則運(yùn)算計(jì)算一些列的值

ifnull(表達(dá)式1,表達(dá)式2):null參與的運(yùn)算,計(jì)算結(jié)果都為null

表達(dá)式1:哪個字段需要判斷是否為null

表達(dá)式2:該字段為null后的替換值

起別名

as:as也可以省略(使用空格也行)

2.3、條件查詢

where子句后跟條件

運(yùn)算符

==>、<、<=、>=、=、<>==

between…and

in(集合)

like:模糊查詢

占位符

_:單個任意字符

%:多個任意字符

is null

and 或 &&

or 或 ||

not 或 !

2.4、分組查詢

語法:group by 分組字段;

注意:

1.分組之后查詢的子彈:分組字段、聚合函數(shù)

2.where和having的區(qū)別?

where在分組之前進(jìn)行限定,如果不滿足條件,則不參與分組。having在分組之后進(jìn)行限定,如果不滿足條件,則不會查詢出來

where后不可以跟聚合函數(shù),having后可以進(jìn)行聚合函數(shù)的判斷

2.5、分頁查詢

語法:limit 開始索引,每頁顯示的條數(shù)

公式:==開始索引 =(當(dāng)前的頁碼 -1) * 每頁顯示的條數(shù)==

select * from student limit 0,3;select * from student limit 3,3;-- limit是一個mysql“方言”

Mysql數(shù)據(jù)庫基礎(chǔ)操作數(shù)據(jù)庫基礎(chǔ)操作

三、DML:增刪改表中數(shù)據(jù)

DML的概述:

用于操作數(shù)據(jù)庫對象中包含的數(shù)據(jù),也就是說操作的單位是記錄。

3.1、添加數(shù)據(jù):

語法:insert into 表名(列名1,列名2…列名n) values(值1,值2,..值n);

-- 插入數(shù)據(jù)(使用value或values都可以)insert into student values(1,'張三',1);  INSERT INTO student(id,username,tid) VALUES  -- 同時插入多條數(shù)據(jù)(mysql獨(dú)有)(1,'張三1',1),(2,'張三2',2),(3,'張三3',3),(4,'張三4',4);

3.2、刪除數(shù)據(jù)

語法:delete from 表名 [where 條件]

delete from student  where id=3;

3.3、修改數(shù)據(jù)

語法:update 表名 set 列名 = “數(shù)據(jù)” where 條件;

update student set username = "張三修改" where id = 3;

四、內(nèi)外連接&自連接&子查詢&聚合函數(shù)

-- 隱式內(nèi)連接SELECT p.`id`,p.`productName`,pr.`dirName` FROM  product p,productdir pr WHERE p.`dir

       隨著云計(jì)算的發(fā)展和大數(shù)據(jù)時代的到來,關(guān)系型數(shù)據(jù)庫越來越難以滿足需求,這主要是因?yàn)樾枰獙υ絹碓蕉嗟陌腙P(guān)系型和非關(guān)系型數(shù)據(jù)進(jìn)行存儲管理,而分布式技術(shù)等新技術(shù)的出現(xiàn),也對數(shù)據(jù)庫技術(shù)提出了新的要求,導(dǎo)致非關(guān)系型數(shù)據(jù)庫數(shù)量不斷增加。但傳統(tǒng)關(guān)系型數(shù)據(jù)庫在傳統(tǒng)領(lǐng)域中仍具有強(qiáng)大的生命力。上面就是Mysql數(shù)據(jù)庫基礎(chǔ)操作的相關(guān)介紹,希望對您有所幫助。

[免責(zé)聲明]

文章標(biāo)題: Mysql數(shù)據(jù)庫基礎(chǔ)操作

文章內(nèi)容為網(wǎng)站編輯整理發(fā)布,僅供學(xué)習(xí)與參考,不代表本網(wǎng)站贊同其觀點(diǎn)和對其真實(shí)性負(fù)責(zé)。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時溝通。發(fā)送郵件至36dianping@36kr.com,我們會在3個工作日內(nèi)處理。

相關(guān)文章
最新文章
查看更多
關(guān)注 36氪企服點(diǎn)評 公眾號
打開微信掃一掃
為您推送企服點(diǎn)評最新內(nèi)容
消息通知
咨詢?nèi)腭v
商務(wù)合作