sql语句练习题

Posted THISISPAN

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql语句练习题相关的知识,希望对你有一定的参考价值。

6.mysql不要用top用limit

在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?

查找时Mysql不能用top,反正我用不了,查了下可以用limit来替换。

比如,想查询下TotalPay前20有哪些人,不能用SELECT TOP 20 * FROM 加州薪水 WHERE OtherPay > 23;那用啥?答案是order by +limit,先排序再查前几

select * from 加州薪水 order by TotalPay desc limit 10 


7.SQL LIKE 操作符

超喜欢这个like有木有,比如我只知道某个人叫John什么的,用它查就可以查到全名

select * from 加州薪水 where EmployeeName like ‘John%‘
技术分享图片

好吧有2377人叫John什么的。

like用法很相似,上述语句中可以‘%xxx‘、‘xxx%‘、‘%xxx%‘,如果不想包含某个字段,用如下:

select * from 加州薪水 where EmployeeName not like ‘John%‘

这里还有一个关于通配符的延伸,除了%,常用的还有 _ [] [! ]

技术分享图片
图片来源:http://www.w3school.com.cn/sql/sql_wildcards.asp

举个例子:

知道某个人叫John_on Y_U什么的,查询一下:

select * from 加州薪水 where EmployeeName like ‘John_on Y_U‘

想找名字开头是J或A或P的人,查找一下:

select * from 加州薪水 where EmployeeName like ‘[JAP]%‘

如果要排除名字开头是J或A或P的人,直接在[]中加个感叹号

8. in和between

要找两个人,知道他们名字,直接查找:(Mysql中不分大小写,所有有时候可能会出现名字大小写的同一个人返回两次)

select *from 加州薪水 where EmployeeName in (‘GARY JIMENEZ‘,‘VINCENT NOLAN‘)
技术分享图片

between类似in,理解为介于某某与某某之间的行,不介于就在前加个not

9.SQL Alias(别名)

给表取个小别名jia

select EmployeeName from 加州薪水 as jia

给列EmployeeName取个小别名Em

select EmployeeName as Em from 加州薪水

四、SQL函数练习

这一节针对于数据库中的计算

技术分享图片

1.最基础模板

根据下面这个模板,我们也知道了除了avg外,像first、last、count、max、min、sum、mid、len用法

select 函数(column) from table_name

2.group by

对于稍微复杂点的计算,group by函数不能忘记,比如在加州薪水例子中,我们需要查不同职位的薪水为多少,代码如下:

select JobTitle,avg(BasePay) from 加州薪水 group by JobTitle

 

技术分享图片

3.HAVING 子句

在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用。举个例子,我们希望查找平均基本工资超过70000的职位

select JobTitle,avg(BasePay) from 加州薪水 group by JobTitle having avg(BasePay>70000)
技术分享图片

4.大小写转换

UCASE() 函数把字段的值转换为大写。如果要把大写转为小写,用LCASE 函数

select ucase(column_name) from table_name

5.round函数

round函数用于把数值字段舍入为指定的小数位数。

比如我想把basepay部分的数值精确到后一位小数点:

select round(BasePay,1) from 加州薪水
技术分享图片

以上是关于sql语句练习题的主要内容,如果未能解决你的问题,请参考以下文章

MYBATIS05_ifwherechoosewhentrimsetforEach标签sql片段

MySQL经典数据库SQL语句编写练习题——SQL语句扫盲

SQL语句(练习题)

Pikachu漏洞练习平台实验——SQL注入

数据库SQL语句练习题

sql语句练习题