【Mysql】sqlzoo中的基本查询语句练习题答案

互联网的本质是分享!

作为一名数据分析师,在工作中使用SQL时一般只用到基本的查询语句,因为只有查询的权限,增删改一般不会用到,下方分享sqlzoo中的select basics及select name练习题答案。
网站快速入口:SQLZOO

image.png
  • SELECT population FROM world WHERE name = 'Germany'
image.png

SELECT name, gdp/population FROM world WHERE area > 5000000

image.png

SELECT name, population FROM world WHERE name IN ('Ireland', 'Iceland', 'Denmark');

image.png

SELECT name, area FROM world WHERE area BETWEEN 200000 AND 250000

下面是select name的内容,使用LIKE運算來檢查國家名字,我們會在world表格中運用SELECT語句:

  1. 找出以 Y 為開首的國家。
  • SELECT name FROM world WHERE name LIKE 'Y%'
  1. 找出以 T 為結尾的國家。
  • SELECT name FROM world WHERE name LIKE '%T'

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

  • SELECT name FROM world WHERE name LIKE '%X%'

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

  • SELECT name FROM world WHERE name LIKE '%land'
  1. 找出所有國家,其名字以 C 作開始,ia 作結尾
  • SELECT name FROM world WHERE name LIKE 'C%ia'
  1. 找出所有國家,其名字包括字母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
  1. 找出所有國家,其名字都有兩個字母 o,被另外兩個字母相隔着。
  • SELECT name FROM world WHERE name LIKE '%o__o%'
  1. 找出所有國家,其名字都是 4 個字母的。
  • SELECT name FROM world WHERE name LIKE '____'(4个“_”)**
  1. 顯示所有國家名字,其首都和國家名字是相同的。
  • SELECT name,capital FROM world WHERE name LIKE capital

下方用到concat函数,了解更多自行百度

CONCAT()函数:用于将两个字符串连接起来,形成一个单一的字符串。
示例:SELECT CONCAT( 'FIRST ' , 'SECOND') = FIRST SECOND

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

  • SELECT name,capital FROM world WHERE capital LIKE concat(name,' City') (说明:city前面有空格)

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

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

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

  • 解1:SELECT name,capital FROM world WHERE capital LIKE (concat('%',name,'_%'))

  • 解2:SELECT name,capital FROM world WHERE capital LIKE concat('%',name,'%')) AND length(capital)> length(name)

下方用到SQL函數 REPLACE或 MID

REPLACE函数:用第三个表达式替换第一个字符串表达式中出现的所有第二个给定字符串表达式。
语法:REPLACE( 'st1' , 'str2' , 'str3' )
MID()函数:用于从文本字段中提取字符。
语法:SELECT MID(column_name, start[, length] ) FROM table_name

15."Monaco-Ville"是合併國家名字 "Monaco" 和延伸詞"-Ville".顯示國家名字,及其延伸詞,如首都是國家名字的延伸。

  • SELECT name,replace(capital,name,'') FROM world where capital like concat(name,'_%')
  • SELECT name,mid(capital,length(name)+1) FROM world where capital like concat(name,'_%')

你可能感兴趣的:(【Mysql】sqlzoo中的基本查询语句练习题答案)