網(wǎng)址是:sqlzoo.net尼酿。做了前三章兜挨,簡單的題還是遇坑了,記錄總結(jié)一下凉泄。
- SELECT basics 略
2. SELECT IN SELECT
a. ROUND函數(shù)
ROUND函數(shù)有2個(gè)參數(shù):ROUND(你需要修改的數(shù)字,保留的小數(shù)點(diǎn)位數(shù))
默認(rèn)是不顯示小數(shù)點(diǎn)蓖救,正數(shù)是保留的小數(shù)點(diǎn)的位數(shù)洪规,負(fù)數(shù)是向左進(jìn)行保留
ROUND (10/3,2) = 3.33
ROUND (10/3) = 3
ROUND (12345,-2) = 12300
b. 同時(shí)選擇
只選一個(gè)可以用“|”來分隔印屁,但同時(shí)選擇就要每個(gè)條件寫一個(gè)語句了循捺,再用and連在一起。
SELECT name FROM world
WHERE name like '%a%'
AND name like '%e%'
AND name NOT LIKE '% %'
3. SELECT from Nobel
a. 輸入單引號(hào)雄人,可以用兩個(gè)單引號(hào)''从橘,也可以用反斜杠。
SELECT * FROM nobel WHERE winner='EUGENE O\'NEILL'
SELECT * FROM nobel WHERE winner='EUGENE O''NEILL'
b. 排序
a.png
這兩道題都講到了排序础钠,sql中默認(rèn)是升序恰力,所以asc不用寫,降序desc要寫旗吁。
另外一個(gè)是用IF和IN來排序特定分類踩萎。單個(gè)條件用IF,范圍用IN
例:將snake放在前面
if (species='snake',1,0),DESC,species;
這句話的意思是很钓,對(duì)species進(jìn)行排序的同時(shí)香府,附加一個(gè)隱藏屬性,可以是1或者0码倦。
因此企孩,在對(duì)species排序的時(shí)候,優(yōu)先級(jí)是判斷species是否為snake袁稽,如果是勿璃,返回1,如果不是推汽,返回0补疑。
如果想把snake的這一行放在查詢結(jié)果尾部,那就是
SELECT * FROM pet ORDER BY if(species='snake',1,0) species;
第一步是查詢species的隱藏屬性歹撒,因?yàn)閟pecies=snake的返回值是1莲组,所以進(jìn)行升序排列時(shí),就被排在了最后
上面是滿足單個(gè)條件栈妆,如果需要用到一個(gè)范圍胁编,則可以使用IN語句,就是上面例圖這樣鳞尔。