SQL語句基礎(chǔ)

SQL語句

SQL分類:

DDL:數(shù)據(jù)定義語句

create,alter,drop...

DML:數(shù)據(jù)操作語句

insert(添加記錄),update(修改記錄中的值),delete(刪除記錄),select(查詢語句(表中))

添加記錄:INSERT

語法1:

insert into 表名 (列名1,列名2,...,列名n)

values (值1,值2,...,值n);

語法2:

insert into 表名

values (值1,值2,...,值n);

注意:

列可以按照自己的順序來寫,值必須和列一一對(duì)應(yīng)

主鍵列:如果設(shè)定為自動(dòng)增長,不指定值,默認(rèn)從1開始,如果已經(jīng)有數(shù)據(jù),取上一個(gè)記錄值+1娱仔,也可以根據(jù)自己需要指定值,如果賦值0或者NULL,也是表示自動(dòng)增長,建議使用NULL

單表查詢:

select 字段,...

from

where 行篩選

group by 分組字段

having 組篩選

order by 列排序

limit m,n取結(jié)果中的一部分行辅鲸;

1.基本查詢語句:

select 字段,...,字段

from 表名;

注意:

1.執(zhí)行流程:from,確定表-->select,確定列

2.如果要查詢所有的列,可以用*

3.對(duì)于數(shù)值,日期時(shí)間類型的列可以做算術(shù)運(yùn)算,? +,-,*,/

4.查詢的結(jié)果稱為結(jié)果集,由行和列組成

5.在查詢時(shí),可以修改結(jié)果集中的列名,就是給列取別名:

select 列名或者表達(dá)式 [as] 別名,...

from 表名;

6.查詢時(shí),可以把多個(gè)值拼接到一起,? concat(值1,值2,...,值n)

7.null: 代表的未知的,不確定的,不是一個(gè)固定值,一種語義的描述,很特殊

表達(dá)式中如果有空值,結(jié)果還是空笛厦,如果null需要轉(zhuǎn)換成某一個(gè)值:

ifnull(列或表達(dá)式,特殊值)

列或表達(dá)式為空時(shí),結(jié)果取特殊值

8.查詢?nèi)ブ氐慕Y(jié)果,利用distinct

select distinct 字段

from 表;

2.查詢語句之排序子句:order by

語法:

order by 字段 asc|desc,...,字段 asc|desc;

注意:

1.執(zhí)行流程:from,確定表-->select,確定列,結(jié)果集確定->order by,排序

2.asc:升序,? desc:降序,? 如果不指定升降,默認(rèn)升序

3.如果要按照多個(gè)列排序

order by 列1 asc|desc,列2? asc|desc

優(yōu)先看前面的列,前面的列值相等再看下一個(gè)列

3.查詢語句之行篩選子句--where

語法:

where 條件表達(dá)式

注意:

1.執(zhí)行流程:from,確定表-->where,行篩選,一行一行篩選->select,列->order by,排序

2.條件運(yùn)算符

????關(guān)系運(yùn)算符:>,>=,<,<=,=(等于),!=,<>(不等于)

????between...and...: 在...和...之間,閉區(qū)間,包含兩個(gè)端點(diǎn)值

????in(點(diǎn)值,...):在列舉的值中存在

????is null:是空的, null代表未知不確定,語義表達(dá)

????判斷是否是空的,不能用=,無法查詢結(jié)果,只能用is null

????like:模糊查詢

????通配符:_:可以代表任意一個(gè)字符????????????%:可以代表任意個(gè)(0,1,多個(gè))字符

????where 列或表達(dá)式 like '通配符組合表達(dá)式'

????eg:查詢名字中包含a? '%a%'

邏輯運(yùn)算符:

????not,? and,? or

????與或非和Java中一樣

????注意:優(yōu)先級(jí),? not>and>or

????如果判斷時(shí),可以利用()改變順序

????not使用

????not between...and...:

????not in(點(diǎn)值,...):

????is not null:

????not like:

4.limit:取一部分結(jié)果

語法:

limit m,n;

注意:

1.執(zhí)行流程:from->where->select->order by,排序->limit,取一部分結(jié)果

2.limit m,n:?

????m:從第m條開始, 計(jì)數(shù)從0開始計(jì)數(shù)

????n:共取多少行

????如果從0開始,m可以省略? , limit n

作用:可以實(shí)現(xiàn)分頁效果

eg:設(shè)定一頁10條

? 一共有105條,需要11頁

? 第1頁:limit 0,10

? 第2頁:limit 10,10

? 第n頁:limit (n-1)*10,10

5.查詢之分組子句---group by

目的:統(tǒng)計(jì)時(shí),把數(shù)據(jù)分成多塊,分別統(tǒng)計(jì)

語法:

group by 字段,...

注意:

1.執(zhí)行流程:from->where,行的篩選->group by,剩下的所有行分組->

select,對(duì)每個(gè)組做統(tǒng)計(jì),一個(gè)組得到一個(gè)結(jié)果->order by,排序->limit

2.當(dāng)使用group by分組時(shí),除了查詢每組統(tǒng)計(jì)結(jié)果,建議把分組的列查詢出來,這樣會(huì)更有意義

3.如果查詢中涉及到組, select中使用組函數(shù),或者使用了group by子句,不能直接查詢普通的列,但可以查詢分組的列

4.同時(shí)按照多個(gè)列分組,多個(gè)列值都相等才算作一組

group by 列1,列2...

函數(shù):

mysql中內(nèi)置了很多函數(shù)

單行函數(shù):一個(gè)行得到一個(gè)結(jié)果, ifnull(), concat()

多行函數(shù)(組函數(shù)):多個(gè)行(一個(gè)組)得到一個(gè)結(jié)果, 統(tǒng)計(jì)函數(shù),聚合函數(shù)

如果所有的數(shù)據(jù)沒有分組,算作一組

聚合函數(shù),組函數(shù):

sum(列或表達(dá)式):求和

avg(列或表達(dá)式):求平均

max(列或表達(dá)式):求最大值

min(列或表達(dá)式):求最小值

count(列或表達(dá)式):統(tǒng)計(jì)個(gè)數(shù)

注意:

1.組函數(shù),統(tǒng)計(jì)是不包括空值

2.sum(),avg()只針對(duì)數(shù)值型,其它三個(gè)可以針對(duì)任意類型

3.count()為了統(tǒng)計(jì)有多少行,建議統(tǒng)計(jì)非空列,主鍵最合適,還可以用count(*)

4.select中使用組函數(shù),就不能同時(shí)查詢普通的列或使用單行函數(shù)

未完待續(xù)......

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末惊科,一起剝皮案震驚了整個(gè)濱河市狈究,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌安拟,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,252評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件宵喂,死亡現(xiàn)場離奇詭異糠赦,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)锅棕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門拙泽,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人裸燎,你說我怎么就攤上這事顾瞻。” “怎么了德绿?”我有些...
    開封第一講書人閱讀 168,814評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵荷荤,是天一觀的道長退渗。 經(jīng)常有香客問我,道長蕴纳,這世上最難降的妖魔是什么会油? 我笑而不...
    開封第一講書人閱讀 59,869評(píng)論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮古毛,結(jié)果婚禮上翻翩,老公的妹妹穿的比我還像新娘。我一直安慰自己稻薇,他們只是感情好嫂冻,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,888評(píng)論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著塞椎,像睡著了一般桨仿。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上忱屑,一...
    開封第一講書人閱讀 52,475評(píng)論 1 312
  • 那天蹬敲,我揣著相機(jī)與錄音,去河邊找鬼莺戒。 笑死伴嗡,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的从铲。 我是一名探鬼主播瘪校,決...
    沈念sama閱讀 41,010評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼名段!你這毒婦竟也來了阱扬?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,924評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤伸辟,失蹤者是張志新(化名)和其女友劉穎麻惶,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體信夫,經(jīng)...
    沈念sama閱讀 46,469評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡窃蹋,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,552評(píng)論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了静稻。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片警没。...
    茶點(diǎn)故事閱讀 40,680評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖振湾,靈堂內(nèi)的尸體忽然破棺而出杀迹,到底是詐尸還是另有隱情,我是刑警寧澤押搪,帶...
    沈念sama閱讀 36,362評(píng)論 5 351
  • 正文 年R本政府宣布树酪,位于F島的核電站浅碾,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏嗅回。R本人自食惡果不足惜及穗,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,037評(píng)論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望绵载。 院中可真熱鬧埂陆,春花似錦、人聲如沸娃豹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,519評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽懂版。三九已至鹃栽,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間躯畴,已是汗流浹背民鼓。 一陣腳步聲響...
    開封第一講書人閱讀 33,621評(píng)論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蓬抄,地道東北人丰嘉。 一個(gè)月前我還...
    沈念sama閱讀 49,099評(píng)論 3 378
  • 正文 我出身青樓,卻偏偏與公主長得像嚷缭,于是被迫代替她去往敵國和親饮亏。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,691評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • MYSQL 基礎(chǔ)知識(shí) 1 MySQL數(shù)據(jù)庫概要 2 簡單MySQL環(huán)境 3 數(shù)據(jù)的存儲(chǔ)和獲取 4 MySQL基本操...
    Kingtester閱讀 7,820評(píng)論 5 116
  • pyspark.sql模塊 模塊上下文 Spark SQL和DataFrames的重要類: pyspark.sql...
    mpro閱讀 9,464評(píng)論 0 13
  • 本片看后感觸很深,那是一種怎樣的毅力讓他們能如此堅(jiān)強(qiáng)付翁。 勇敢 在磨練成長的過程中會(huì)碰到各種困難简肴,只有勇敢面對(duì)才能讓...
    天琴_6c1e閱讀 435評(píng)論 0 0
  • 相信對(duì)于大多數(shù)人着帽,自己制作PPT已經(jīng)成為工作中必不可少的事情,今天分享10款良心的工具移层,可以很好的幫助你制作PPT...
    木子淇閱讀 5,346評(píng)論 4 77
  • 籠拋淺海趁風(fēng)平,浪涌漁夫猛拽繩赫粥。 蟹已掏出偏擺手观话,笑說個(gè)小往回扔。 (新韻 拍于溫哥華)
    珠江潮平閱讀 1,177評(píng)論 22 35