SQL雜記_day01

? ? ? ?本記錄旨在記錄以及回憶常用的Sql語句乙埃,關(guān)鍵字(太基礎(chǔ)如select就算了)蝴猪,以數(shù)據(jù)分析為根本目的,服務(wù)于分析膊爪,因此需要常做更新,切勿死磕一點(diǎn)嚎莉,木有意義米酬,會(huì)用即可;還有一點(diǎn)趋箩,就是記性好像不怎么好赃额,所以需要這么一個(gè)隨筆來進(jìn)行記錄。一下內(nèi)容大部分都取自《sql必知必會(huì)》叫确,做一個(gè)總結(jié)跳芳。

? ? ? ? 關(guān)于環(huán)境的搭建問題,僅僅是練習(xí)熟悉sql的話竹勉,不需要使用可視化工具飞盆,搭建完整的環(huán)境(如安裝mysql,SQLyog等)次乓,直接使用PHPstudy這個(gè)工具的數(shù)據(jù)庫工具即可吓歇,快速綠色,敲命令行完成練習(xí)票腰,足夠城看。

? ? ? ? 關(guān)于SQL語句通用性的問題,不同的數(shù)據(jù)庫杏慰,在某些功能上會(huì)有不同的sql實(shí)現(xiàn)方法测柠,當(dāng)前練習(xí)的版本僅僅是以mysql為基準(zhǔn),所以以下語句都是在mysql 5.5 運(yùn)行練習(xí)缘滥。如果語句不通用轰胁,則會(huì)標(biāo)注出來


開始正題 Let`s do it !:

1、檢索不同的值DISTINCT

輸入:

SELECT DISTINCT vend_id

FROM Products;

輸出:

vend_id

----------

BRS01

DLL01

FNG01

由此可見它的作用就是檢索出選中列中的所有不同的行朝扼,很簡單软吐,但有一點(diǎn)需要注意:

注意:不能部分使用 DISTINCT

DISTINCT作用于select后的所有列,不僅僅是緊跟著 DISTINCT后的那一列吟税,例如:

SELECT DISTINCT vend_id, prod_price ?則得出的結(jié)果如下:


以最長的不重復(fù)列為標(biāo)準(zhǔn)

2凹耙、輸出限定數(shù)目的結(jié)果 LIMIT(只適用于mysql DB)

兩種語句方式:

SELECT prod_name ? ? ?或者 ? ? ? ? ? ? ?? SELECT prod_name?

FROM Products ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? FROM Products

LIMIT 4 OFFSET 3; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? LIMIT 3, 4;

以上兩種方法得到的結(jié)果都是:

從第三行開始,選取四行輸出

LIMIT 4 OFFSET 3 是指輸出四行肠仪,從行號(hào)為3的行開始肖抱;

LIMIT 3, 4; 是指從行號(hào)為3的行開始,輸出四行异旧;(意義相同意述,這句為簡化版本)

PS:行號(hào)是從0開始的

3、對(duì)所選擇的列進(jìn)行排序 ORDER BY

1)ORDER BY一定是SELECT語句中的最后一個(gè)語句,此處解釋一下:SELECT語句就是指的 SELECT....FROM....語句荤崇,ORDER BY使用的時(shí)候必須緊跟在這條語句之后拌屏,之后在使用其他語句,比如LIMIT等术荤;但如果出現(xiàn)了WHERE語句倚喂,ORDER BY就要位于WHERE之后使用

如:

SELECT prod_id, prod_price, prod_name

FROM Products

LIMIT 3, 4

ORDER BY 2, 3;

就是錯(cuò)誤的瓣戚!

2)默認(rèn)的的排序順序是升序ASC(或ASCENDING)端圈,數(shù)字的序低于字母(先數(shù)字后字母)

3)降序是DESC(或DESCENDING)

4)多個(gè)列排序:

SELECT prod_id, prod_price, prod_name

FROM Products

ORDER BY prod_price DESC, prod_name;

以上是對(duì)prod_price進(jìn)行降序,之后再對(duì)prod_name升序(只有在prod_price中出現(xiàn)相同的值時(shí)子库,才會(huì)開始對(duì)prod_name升序排序舱权;不存在相同時(shí),就按著prod_price降序排序)仑嗅,如:

以上語句執(zhí)行后的結(jié)果

5)使用相對(duì)位置來進(jìn)行排序:

SELECT prod_id, prod_price, prod_name

FROM Products

ORDER BY 2?DESC,?3;

此條語句執(zhí)行結(jié)果和 4)結(jié)果相同宴倍,相對(duì)位置是指SELECT所選擇的列的相對(duì)書寫位置

6)關(guān)于大小寫的排序區(qū)別:

就如A和a該如何排序,這個(gè)就和數(shù)據(jù)庫的具體設(shè)置有關(guān)了仓技,找管理員啊楚,在此就不深究,遇到問題再解決

4浑彰、關(guān)于WHERE語句的一些總結(jié):


以上是WHERE中可以使用的操作符

1)其實(shí)以上列出的有些操作符是冗余的恭理,如"<>",就可以使用" != "來代替郭变, " !< "相當(dāng)于" >= "颜价,并非所有的DB都支持這些操作符!

2)對(duì)于值是字符串的列诉濒,需要使用單引號(hào)來限定周伦。

SELECT vend_id, prod_name

FROM Products

WHERE vend_id != 'DLL01';

3)取范圍值BETWEEN

SELECT prod_name, prod_price

FROM Products

WHERE prod_price BETWEEN 5 AND 10;

此處需要注意,是包含5和10的未荒,也就是包含開始和結(jié)束值专挪!

4)匹配空值NULL要使用 IS NULL 語句:

空值不代表值為0,是指的沒有填充值片排!

SELECT cust_name

FROM CUSTOMERS

WHERE cust_email IS NULL;


語句執(zhí)行結(jié)果

5)WHERE語句中的 AND 和 OR:

此處一定要注意結(jié)合順序寨腔,AND結(jié)合優(yōu)先級(jí)高于OR,也就是先和計(jì)算 AND率寡,之后計(jì)算 OR

SELECT prod_name, prod_price

FROM Products

WHERE vend_id = 'DLL01' OR vend_id = 'BRS01'

? ? ? ? ? ? ? ?AND prod_price >= 10;

先計(jì)算?(vend_id = 'BRS01' AND prod_price >= 10)

SELECT prod_name, prod_price

FROM Products

WHERE (vend_id = 'DLL01' OR vend_id = 'BRS01')

? ? ? ? ? ? ? ?AND prod_price >= 10;


結(jié)果不同
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末迫卢,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子冶共,更是在濱河造成了極大的恐慌乾蛤,老刑警劉巖每界,帶你破解...
    沈念sama閱讀 216,997評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異家卖,居然都是意外死亡眨层,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,603評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門上荡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來趴樱,“玉大人,你說我怎么就攤上這事榛臼。” “怎么了窜司?”我有些...
    開封第一講書人閱讀 163,359評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵沛善,是天一觀的道長。 經(jīng)常有香客問我塞祈,道長金刁,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,309評(píng)論 1 292
  • 正文 為了忘掉前任议薪,我火速辦了婚禮尤蛮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘斯议。我一直安慰自己产捞,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,346評(píng)論 6 390
  • 文/花漫 我一把揭開白布哼御。 她就那樣靜靜地躺著坯临,像睡著了一般。 火紅的嫁衣襯著肌膚如雪恋昼。 梳的紋絲不亂的頭發(fā)上看靠,一...
    開封第一講書人閱讀 51,258評(píng)論 1 300
  • 那天,我揣著相機(jī)與錄音液肌,去河邊找鬼挟炬。 笑死,一個(gè)胖子當(dāng)著我的面吹牛嗦哆,可吹牛的內(nèi)容都是我干的谤祖。 我是一名探鬼主播,決...
    沈念sama閱讀 40,122評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼老速,長吁一口氣:“原來是場噩夢啊……” “哼泊脐!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起烁峭,我...
    開封第一講書人閱讀 38,970評(píng)論 0 275
  • 序言:老撾萬榮一對(duì)情侶失蹤容客,失蹤者是張志新(化名)和其女友劉穎秕铛,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體缩挑,經(jīng)...
    沈念sama閱讀 45,403評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡但两,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,596評(píng)論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了供置。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片谨湘。...
    茶點(diǎn)故事閱讀 39,769評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖芥丧,靈堂內(nèi)的尸體忽然破棺而出紧阔,到底是詐尸還是另有隱情,我是刑警寧澤续担,帶...
    沈念sama閱讀 35,464評(píng)論 5 344
  • 正文 年R本政府宣布擅耽,位于F島的核電站,受9級(jí)特大地震影響物遇,放射性物質(zhì)發(fā)生泄漏乖仇。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,075評(píng)論 3 327
  • 文/蒙蒙 一询兴、第九天 我趴在偏房一處隱蔽的房頂上張望乃沙。 院中可真熱鬧,春花似錦诗舰、人聲如沸警儒。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,705評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽冷蚂。三九已至,卻和暖如春汛闸,著一層夾襖步出監(jiān)牢的瞬間蝙茶,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,848評(píng)論 1 269
  • 我被黑心中介騙來泰國打工诸老, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留隆夯,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,831評(píng)論 2 370
  • 正文 我出身青樓别伏,卻偏偏與公主長得像蹄衷,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子厘肮,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,678評(píng)論 2 354

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