**#SQL ZOO 最全答案系列** ****##SELECT basics**答案及知识点总结****

#SQL ZOO 最全答案系列
##SELECT basics**答案及知识点总结

1.注意字串應該在’單引號’中。

SELECT population FROM world
  WHERE name = 'Germany'

2.注意使用算术操作符:加减乘除+ - * /

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

3."IN"可以讓我們檢查一個項目是否在列表中。

SELECT name, population FROM world
  WHERE name IN ('ireland', 'iceland', 'denmark')

4.BETWEEN 允許範圍檢查 ,比如日期,距离,销售等

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

進入教程 1 :SELECT name
用通配符进行过滤需要注意的点;

在这里插入图片描述
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 name,capital from world
where capital like concat(name,'%') and name != capital

15.“Monaco-Ville"是合併國家名字 “Monaco” 和延伸詞”-Ville".
顯示國家名字,及其延伸詞,如首都是國家名字的延伸。你可以使用SQL函數 REPLACE 或 MID.

select name,replace(capital,name,'') as ext
from world
where capital like concat(name,'%') and (name != capital)

总结:CONCAT主要是把字符串连接起来,这个好处在于,它可以组合字段名和字符串,一般我们在模糊匹配的时候用的最多的就是’%value%’,但是当这个value不是一个具体的值,而是一个字段名的时候这样方法没法实现。所以就有concat(’%’,value,’%’)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值