一:DQL执行语句

通过查询语句查询出来的数据以表的形式展示给我们,我们称这个表为虚拟结果集。存放在内存中 。查询返回的结果是一张虚拟表。

1.查询指定的列:
SELECT 列名1,列名2…FROM 表名;


2.模糊查询:
_:任意一个字母(通配符)
%:任意0~n个字母(通配符)

练习:

-- 查询姓名由5个字母构成的学生记录,
select * from students where name like '_____';

-- 查询姓名以‘m’开头的学生记录
select * from students where name like m%;

--查询姓名中第二个字母为‘u’的学生记录
select * from students where name like '_u%';

-- 查询姓名中包含‘s’字母的学生记录
select * from students where name like '%s%';

3.字段控制查询:
①去除重复记录:
SELECT DISTINCT name FROM students;

②把查询字段的结果进行运算,必须都要是数据型
SELECT * ,字段1+字段2 FROM 表名;
SELECT *,age+IFNULL(score,0) FROM students;
例如:
MySQL——数据查询语言DQL与分组查询(四)


③对查询结果起别名:
在上面查询中出现列名为sx+IFFULL(yw,0),这很不美观,现在我们给这一列给出一个别名,为total。
SELECT *,yw+IFNULL(score,0) AS totalFROM students;

4.其它语句介绍:
排序关键字ORDER BYSELECT * FROM 表名 ORDER BY 列名 ASC/DESC


二:分组查询

什么是分组查询?
将查询结果按照1个或者多个字段进行分组,字段值相同的为一组。简单来说就是有10个人,男的分一组,女的分一组。将他们归类。

1.GROUP BY和GROUP_CONCAT:

分组关键字:GROUP BY
分组注意事项:在使用分组时,select后面直接跟的字段一般都出现在 GROUP BY 后。

现在我们要对所有的部门进行分组,假如有一张表如下:
MySQL——数据查询语言DQL与分组查询(四)
操作语句和运行结果如下:
MySQL——数据查询语言DQL与分组查询(四)
现在我们要将每个部门的人名显示出来,操作语句和运行结果如下(FROUP_CONCAT作为分组的依据):
MySQL——数据查询语言DQL与分组查询(四)


上面通过GROUP_CONCAT()的启发,我们既然可以统计出每个分组的某个字段的值的集合,那么我们也可以通过集合函数来对这个“值的集合”做一些操作。

练习1:查询每个部门的部门名称和每个部门的工资和
MySQL——数据查询语言DQL与分组查询(四)


练习2:查询每个部门的部门名称和每个部门的人数
MySQL——数据查询语言DQL与分组查询(四)


练习3:查询每个部门的部门名称以及每个部门工资大于1500的人数
MySQL——数据查询语言DQL与分组查询(四)


2.GROUP BY+HAVING:用来分组查询后指定一些条件来输出查询结果(二级筛选)
having作用和where一样,但having只能用于group by

having和where的区别:
①having是在分组后对数据进行过滤
②where是在分组前对数据进行过滤

③having后面可以使用分组函数(统计函数)
④where后面不可以使用分组函数
⑤where是对分组前记录的条件,如果某行记录没有满足where字句的条件,那么这行记录不会参加分组;而having是对分组后数据的约束。

练习1:查询工资总和大于9000的部门名称
MySQL——数据查询语言DQL与分组查询(四)

练习2:查询工资大于2000的,工资总和大于9000的部门名称以及工资和
MySQL——数据查询语言DQL与分组查询(四)


三:查询语句书写顺序
MySQL——数据查询语言DQL与分组查询(四)

四:SQL分页查询思路LIMIT使用
MySQL——数据查询语言DQL与分组查询(四)

分页思路:
MySQL——数据查询语言DQL与分组查询(四)

相关文章:

  • 2021-04-09
  • 2018-05-26
  • 2021-09-07
  • 2021-04-23
  • 2020-10-26
  • 2021-11-05
  • 2021-09-01
猜你喜欢
  • 2021-06-01
  • 2021-11-30
  • 2021-10-24
  • 2019-06-20
  • 2021-11-05
  • 2021-11-05
  • 2021-11-05
相关资源
相似解决方案