最近在练习sql,整理了sqlzoo中的答案,特此记录。
SELECT_names/zh
1.找出以 Y 為開首的國家。
SELECT name FROM WORLD
WHERE name LIKE 'Y%';
2.找出以 Y 為結尾的國家。
SELECT name FROM WORLD
WHERE name LIKE '%Y';
3.找出所有國家,其名字包括字母x。
SELECT name FROM WORLD
WHERE name LIKE '%x%';
4.找出所有國家,其名字以 land 作結尾。
SELECT name FROM world
WHERE name LIKE '%land';
5.找出所有國家,其名字以 C 作開始,ia 作結尾。
SELECT name FROM world
WHERE name LIKE 'C%ia';
6.找出所有國家,其名字包括字母oo。
SELECT name FROM world
WHERE name LIKE '%oo%';
7.找出所有國家,其名字包括三個或以上的a。
SELECT name FROM world
WHERE name LIKE '%a%a%a%';
8.找出所有國家,其名字以t作第二個字母。
SELECT name FROM world
WHERE name LIKE '_t%'
ORDER BY name;
9.找出所有國家,其名字都有兩個字母 o,被另外兩個字母相隔着。
SELECT name FROM world
WHERE name LIKE '%o__o%';
10.找出所有國家,其名字都是 4 個字母的。
SELECT name FROM world
WHERE name LIKE '____';
11.顯示所有國家名字,其首都和國家名字是相同的。
SELECT name FROM world
WHERE name = capital;
12.顯示所有國家名字,其首都是國家名字加上”City”。
SELECT name FROM world
WHERE capital = CONCAT(name,' City');
13.找出所有首都和其國家名字,而首都要有國家名字中出現。
SELECT capital,name FROM world
WHERE capital LIKE CONCAT('%',name,'%');
14.找出所有首都和其國家名字,而首都是國家名字的延伸。
你應顯示 Mexico City,因它比其國家名字 Mexico 長。
你不應顯示 Luxembourg,因它的首都和國家名相是相同的。
SELECT capital,name FROM world
WHERE capital LIKE CONCAT('%',name,'%') AND LEN(capital)>LEN(name);
15."Monaco-Ville"是合併國家名字 "Monaco" 和延伸詞"-Ville".
顯示國家名字,及其延伸詞,如首都是國家名字的延伸。
SELECT name,REPLACE(capital,name,'') AS extendword FROM world
WHERE capital LIKE CONCAT('%',name,'%') AND LEN(capital)>LEN(name);
以上,记录本人学习过程。