語(yǔ)法:select 列名1赊豌,列名2.....from 表名? ?where 條件;
查詢所有字段? select * from 表名? where 條件映跟;
過(guò)濾重復(fù)的值:select distinct 列名 from 表名;
連接:select concat_ws('連接符',字段1绊袋,字段2) as? 變量? from 表名;concat_ws()其實(shí)就是一個(gè)連接函數(shù)铸鹰,把查出來(lái)的值連接在一起癌别;
也可以直接使用concat函數(shù)拼接在一起
加別名:select? 字段1 as 別名1,字段2? as 別名2? from 表蹋笼;別名只是查出來(lái)的時(shí)候顯示的不會(huì)改變?cè)袛?shù)據(jù)庫(kù)的字段展姐;
模糊查詢:select 字段1躁垛,字段2...from 表名? where? 字段名? like? ?值;
這種相當(dāng)于是=圾笨,
左模糊匹配就在值的左邊加一個(gè)%缤苫,右模糊匹配就在值的右邊加一個(gè)%,全模糊匹配就在兩邊都加%,%的意思就是所有字符墅拭;
排序:select * from 表名 order by 字段名? asc(升序活玲,默認(rèn))? [desc? 降序]
聚合函數(shù):
1.查詢表的記錄數(shù): select count(*)? from 表名;
2.查詢此列的和:select? sum(列名) from 表名:
3.查詢此列的平局值:select avg(列名) from 表名:
4.查詢此列的最大值:select max(列名) from 表名谍婉;
5.查詢此列的最小值:select min(列名) from? 表名舒憾;
分組查詢:select * from 表名 group by 字段;
內(nèi)連接查詢:我們有兩張表穗熬,一張表記錄學(xué)生的基本信息镀迂,另一張表記錄學(xué)生的分?jǐn)?shù),我們要查詢出每個(gè)學(xué)生對(duì)應(yīng)的分?jǐn)?shù)唤蔗,
先準(zhǔn)備數(shù)據(jù):我們可以看出mark表有個(gè)字段std_id是學(xué)生表的id探遵,意思就是這兩張表是通過(guò)std_id關(guān)聯(lián)的,其實(shí)就是學(xué)生表的主鍵是分?jǐn)?shù)表的外鍵妓柜,我們可以通過(guò)學(xué)生的id去查找分?jǐn)?shù)箱季,
查詢1:只能用where
查詢2:其實(shí)就是把‘,’換成了 inner join,既可以用where也可以用on
左連接查詢:就是把inner 改成了left,然后把where 改成了on,左連接就是以左邊的表為基準(zhǔn)棍掐,先把左邊的數(shù)據(jù)都查出來(lái)藏雏,右邊有對(duì)應(yīng)的數(shù)據(jù)就查出來(lái),沒(méi)有數(shù)據(jù)就為Null;右連接也是同樣的道理作煌;
右連接查詢:
聯(lián)合查詢:其實(shí)就是兩個(gè)sql語(yǔ)句連在一起掘殴,但是兩個(gè)sql查詢的列的個(gè)數(shù)必須相同;
子查詢:就是有一個(gè)查詢會(huì)依托于 其他的查詢粟誓,
分頁(yè)查詢:limit x,y;x表示從哪條數(shù)據(jù)開(kāi)始奏寨,默認(rèn)是0,y表示取幾條數(shù)據(jù)鹰服,