mysql----SELECT names/zh
| Language: | English • 中文 |
|---|
| name | continent |
|---|---|
| Afghanistan | Asia |
| Albania | Europe |
| Algeria | Africa |
| Andorra | Europe |
| Angola | Africa |
| .... | |
name:国家名称
continent:洲份
Pattern Matching Strings
此教程使用LIKE运算子来检查国家名字,我们会在world表格中运用SELECT语句:
你可以用WHERE name LIKE 'B%'来找出以B为开首的国家。
%是万用字元,可以用代表任何字完。
找出以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%'
and name like '%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%'

9.
“Lesotho 赖索托”和”Moldova 摩尔多瓦”都有两个字母o,被另外两个字母相隔着。
找出所有国家,其名字都有两个字母o,被另外两个字母相隔着。
SELECT name FROM world
WHERE name LIKE '%o__o%'

10.
“Cuba古巴”和”Togo 多哥”都是4 个字母。
找出所有国家,其名字都是4 个字母的。
SELECT name FROM world
WHERE LENGTH(name)=4

更困难的问题
如你觉得以上题目太容易了,非常好。Well done for getting this far. 下面的题目更困难,更有挑战性!
11.
“Luxembourg 卢森堡”的首都capital 都同样叫“Luxembourg”。
显示所有国家名字,其首都和国家名字是相同的。
SELECT name FROM world
WHERE name=concat(capital,'');

12.
“Mexico 墨西哥”的首都是”Mexico City”。
显示所有国家名字,其首都是国家名字加上”City”。
SELECT name FROM world
WHERE capital=concat(name,' City');

找出所有首都和其国家名字,而首都要有国家名字中出现。
SELECT capital,name FROM world
WHERE capital like concat('%',name,'%');

找出所有首都和其国家名字,而首都是国家名字的延伸。
你应显示Mexico City,因它比其国家名字Mexico长。
你不应显示Luxembourg,因它的首都和国家名相是相同的。
SELECT name,capital FROM world
WHERE capital like concat('%',name,'%') and LENGTH(capital)<>LENGTH(name);

15.
"Monaco-Ville"是合并国家名字"Monaco" 和延伸词"-Ville".
显示国家名字,及其延伸词,如首都是国家名字的延伸。
你可以使用SQL函数REPLACE或MID.
select name,replace(capital, name, '') from world where capital Like concat(name,'%_')

mysql----SELECT names/zh的更多相关文章
- sqlzoo练习答案--SELECT names/zh
name continent Afghanistan Asia Albania Europe Algeria Africa Andorra Europe Angola Africa .... name ...
- mysql set names 命令和 mysql 字符编码问题
先看下面的执行结果: (root@localhost)[(none)]mysql>show variables like 'character%'; +--------------------- ...
- mysql select 格式化输出
select * from test\G; MySQL的客户端命令行工具,有很多方便使用者的特性,某些方面甚至可以说比Oracle的sqlplus更加人性化.当然从整体来说,还是sqlplus更加方便 ...
- mysql set names 命令和 mysql字符编码问题
先看下面的执行结果: (root@localhost)[(none)]mysql>show variables like 'character%'; +--------------------- ...
- mysql select日期格式
mysql表中datatime类型存储为2016-01-10,C#直接select 后,在datatable里面看,变成01/10/2016,需要还原回去,使用select DATE_FORMAT(列 ...
- mysql select
select 查询: 赋值:赋值不能应用在where中,因为where操作的是磁盘上的文件,可以应用在having筛选中. 例:select (market_price-shop_price) as ...
- mysql SELECT FOR UPDATE语句使用示例
以MySQL 的InnoDB 为例,预设的Tansaction isolation level 为REPEATABLE READ,在SELECT 的读取锁定主要分为两种方式:SELECT ... LO ...
- MySQL select into 和 SQL select into
现在有张表为student,我想将这个表里面的数据复制到一个为dust的新表中去,虽然可以用以下语句进行复制,总觉得不爽,希望各位帮助下我,谢谢. answer 01: create table d ...
- mysql SELECT FOUND_ROWS()与COUNT(*)用法区别
在mysql中 FOUND_ROWS()与COUNT(*)都可以统计记录,如果都一样为什么会有两个这样的函数呢,下面我来介绍SELECT FOUND_ROWS()与COUNT(*)用法区别 SEL ...
- php学习之道:mysql SELECT FOUND_ROWS()与COUNT(*)使用方法差别
在mysql中 FOUND_ROWS()与COUNT(*)都能够统计记录.假设都一样为什么会有两个这种函数呢.以下我来介绍SELECT FOUND_ROWS()与COUNT(*)使用方法差别 SELE ...
随机推荐
- spark最新源码下载并导入到开发环境下助推高质量代码(Scala IDEA for Eclipse和IntelliJ IDEA皆适用)(以spark2.2.0源码包为例)(图文详解)
不多说,直接上干货! 前言 其实啊,无论你是初学者还是具备了有一定spark编程经验,都需要对spark源码足够重视起来. 本人,肺腑之己见,想要成为大数据的大牛和顶尖专家,多结合源码和操练编程. ...
- HashTable原理与源码分析
本文版权归 远方的风lyh和博客园共有,欢迎转载,但须保留此段声明,并给出原文链接,谢谢合作,如有错误之处忘不吝批评指正! HashTable内部存储结构 HashTable内部存储结构为数组+单向链 ...
- Linux 权限位详解
1. Linux 权限位 对于权限,有点绕,因为文件的权限和目录的权限是有一些区别的. 在Linux中,有5种权限,分别是,r.w.x.s.t. 可读权限:r 可写权限:w 可执行权限:x Setui ...
- 将Long类型字节大小数据转换成标准的视频大小格式
很多时候针对视频信息,数据库中存储的视频大小是字节类型,然后我们在页面中显示则需要使用的是标准的视频大小显示格式,我这里工具类最多显示的是Mb,如果需求要显示G的话可自行参照修改. 直接上工具类和测试 ...
- MySQL:进阶之视图函数
一,视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用. 使用视图我们可以把查询过程中的临时 ...
- ubuntu搭建nodejs生产环境——快速部署手册
为什么不用CentOS而用Ubuntu作为生产环境的运行平台?这个我也比较好奇,公司订的只能沿用传统,从使用成本的角度来说,此举也是值得肯定的. 测试环境 腾讯云 Ubuntu 16.04 阿里云 U ...
- 绝对路径的表示方式为什么是"/usr"而不是"//usr"
今天闲逛贴吧,竟然看到有个人问绝对路径的表示方式为什么不是//usr/local而是/usr/local.原文: 我想99%的人都没想过这个问题,都理所当然的认为:它不就是根"/" ...
- IdentityServer4 中文文档 -11- (快速入门)添加基于 OpenID Connect 的用户认证
IdentityServer4 中文文档 -11- (快速入门)添加基于 OpenID Connect 的用户认证 原文:http://docs.identityserver.io/en/releas ...
- 对于SQL的Join,在学习起来可能是比较乱的。我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚。Coding Horror上有一篇文章,通过文氏图 Venn diagrams 解释了SQL的Join。我觉得清楚易懂,转过来。
对于SQL的Join,在学习起来可能是比较乱的.我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚.Codi ...
- vb.net 使用ip查詢(Host Name)(WorkGroup Name)(MAC Address)-運用cmd及nbtstat命令
Sub nbtstat(ByVal ip As String) Dim strRst, strRst1, strRst2, strRst3 As String Dim n1, n2, n3 As In ...