SQLZOO习题及答案--SELECT names/zh

本文是关于SQLZOO练习题的解答,涉及寻找特定开头、结尾或包含特定字符的国家名称,例如以Y开头、以land结尾的国家,以及首都与国家名称相同的案例等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SQLZOO: http://zh.sqlzoo.net/wiki/SELECT_names/zh

1.找出以 Y 為開首的國家。

SELECT name FROM world
  WHERE name LIKE 'Y%

 

2.找出以 Y 為結尾的國家

SELECT name FROM world
  WHERE name LIKE '%Y'

 

3.

“Luxembourg 盧森堡”中有一個x字母,還有一個國家的名字中有x。列出這兩個國家。

找出所有國家,其名字包括字母x。

SELECT name FROM world
  WHERE name LIKE '%x%'

 

4.

“Iceland 冰島”和“Switzerland 瑞士”的名字都是以”land”作結束的。還有其他嗎?

找出所有國家,其名字以 land 作結尾。

SELECT name FROM world
  WHERE name LIKE '%land'

 

5.

“Columbia 哥倫比亞”是以 C 作開始,ia 作結尾的。還有兩個國家相同。

找出所有國家,其名字以 C 作開始,ia 作結尾。

SELECT name FROM world
  WHERE name LIKE 'C%ia'

 

6.

“Greece 希臘”中有雙 e 字。哪個國家有雙 o 字呢?

找出所有國家,其名字包括字母oo。

SELECT name FROM world
  WHERE name LIKE '%oo%'

 

7.

“Bahamas 巴哈馬”中有三個 a,還有嗎?

找出所有國家,其名字包括三個或以上的a

SELECT name FROM world
  WHERE name LIKE '%a%a%a%'

 

8.

“India 印度”和”Angola 安哥拉”的第二個字母都是 n。
你可以用底線符_當作單一個字母的萬用字元。

SELECT name FROM world
 WHERE name LIKE '_n%'
ORDER BY name

找出所有國家,其名字以t作第二個字母。

SELECT name FROM world
 WHERE name LIKE '_t%'
ORDER BY name

 

9.

“Lesotho 賴索托”和”Moldova 摩爾多瓦”都有兩個字母 o,被另外兩個字母相隔着。

找出所有國家,其名字都有兩個字母 o,被另外兩個字母相隔着。

SELECT name FROM world
 WHERE name LIKE '%o__o%'

 

10.

“Cuba古巴”和”Togo 多哥”都是 4 個字母。

找出所有國家,其名字都是 4 個字母的。

SELECT name FROM world
 WHERE name LIKE '____'

 

11.

“Luxembourg 盧森堡”的首都 capital 都同樣叫“Luxembourg”。

顯示所有國家名字,其首都和國家名字是相同的。

SELECT name
  FROM world
 WHERE name = capital

 

12.

“Mexico 墨西哥”的首都是”Mexico City”。

顯示所有國家名字,其首都是國家名字加上”City”。

SELECT name
  FROM world
 WHERE capital = concat(name,' city')

 

13.找出所有首都和其國家名字,而首都要有國家名字中出現

注意:为在搜索子句中使用通配符,必须使用LIKE操作符

SELECT capital,name
FROM world
WHERE capital like concat('%',name,'%')

 

14.

找出所有首都和其國家名字,而首都是國家名字的延伸。
你應顯示 Mexico City,因它比其國家名字 Mexico 長。
你不應顯示 Luxembourg,因它的首都和國家名相是相同的。

SELECT name,capital
FROM world
WHERE capital like concat(name,'%_')

 

15.

"Monaco-Ville"是合併國家名字 "Monaco" 和延伸詞"-Ville".

顯示國家名字,及其延伸詞,如首都是國家名字的延伸。

你可以使用SQL函數 REPLACE 或 MID.

SELECT name,REPLACE(capital,name,'') AS extend
FROM world
WHERE capital like concat(name,'%_')

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值