首页 > 其他分享 >DQL聚合函数/分组查询/分页查询

DQL聚合函数/分组查询/分页查询

时间:2023-02-28 09:44:24浏览次数:38  
标签:count -- 查询 stu 分组 math DQL sex select

-------------------------聚合函数-------------------------------------------------------

查班里一共多少学生:

  select count(id) from stu;      -- count()统计的列名不能为null

  select count(*) from stu;      -- 推荐写*

查班里数学最高/低分/平均分:

  select min(math) from stu;    -- 聚合函数里null不参与高低

  select max(math) from stu;  

  select avg(math) from stu;  

 

----------------------------------分组查询-----------------------------------------------------

分男女查数学平均分:

  select sex, avg(math) from stu group by sex;  -- select之后的字段只能是分的组或者聚合函数,其他无意义

分男女查数学平均分以及各自人数:

  select sex, avg(math), count(*) from stu group by sex;

分男女查数学平均分以及各自人数,分数低于70的不参与:

  select sex, avg(math), count(*) from stu where math>70 group by sex; -- 分组之前

分男女查数学平均分以及各自人数,分数低于70的不参与,分组后人数>2:

select sex, avg(math), count(*) from stu where math>70 group by sex having count(*)>2; -- 分组之后  

 

where里不能判断聚合函数,having可以

执行顺序:where> 聚合函数>having

 

-------------------------分页查询--------------------------------------

从0开始,查询3条数据      --起始索引=(当前页码-1)*每页显示条数

select * from stu limit 0,3;    --(1-1)*3=0

每页查3条,查第1页数据

select * from stu limit 0,3;

每页查3条,查第2页数据    

select * from stu limit 3,3;    --(2-1)*3=3

每页查3条,查第3页数据

select * from stu limit 6,3;    --(3-1)*3=6

 

===========分页方言========================

mysql用limit

oracle用rownumber

sql sever 用top

 

标签:count,--,查询,stu,分组,math,DQL,sex,select
From: https://www.cnblogs.com/dahuilang21/p/17162817.html

相关文章

  • 8.开启慢查询日志
    1.查看慢查询日志是否开启showvariableslike%slow_query_log%2.开启慢查询日志:setglobalslow_query_log=1    3.查看慢查询日志设置的时间showvariable......
  • JDBC练习,查询所有
    查询所有数据获取Connection定义SQL:selection*fromtb_brand;获取PerparedStatement对象设置参数:不需要执行SQL处理结果:List<Brand>释放资源没有系统学过这些,只......
  • mybatis模糊查询
    publicUserqueryUserByLike(@Param("arg")Stringarg);方式一:<selectid="queryUserByLike"resultType="org.example.entity.User">select*fromt_use......
  • mybatis查询返回多条数据
    返回User类型的list<selectid="queryAllUser"resultType="org.example.entity.User">select*fromt_user</select>publicinterfaceUserMapper{......
  • Q查询和F查询
     F查询与Q查询F查询Django提供F()来做这样的比较。F()的实例可以在查询中引用字段,来比较同一个model实例中两个不同字段的值。#查询评论数大于收藏数的书籍f......
  • django多表查询
      注意事项: 表的名称myapp_modelName,是根据模型中的元数据自动生成的,也可以覆写为别的名称 id 字段是自动添加的 对于外键字段,Django会在字段名上添加"......
  • DQL基础查询/条件查询
    基础查询:selectname,agefromstu; --查两列select * from stu;--查全部,不推荐selectdistinctaddressfromstu;--......
  • Linux操作系统下查询NVMe盘符、Slot ID和Bus ID的对应关系
    在拆卸NVMePCIe固态硬盘时,需要查询Linux操作系统下NVMe盘符、SlotID和BusID的对应关系。操作步骤打开操作系统命令终端。依次执行cd/sys/bus/pci/slots和ll命令,找到......
  • mysql开启慢查询日志
    前言:mysql数据库默认没有开启慢查询日志,需要我们手动去设置这个参数;慢查询,它的主要作用是定位那些执行时间比较长的sql语句,运行时间超过long_query_time值的SQL(long_query_......
  • mysql查询近N天的数据
    今天select*from表名whereto_days(时间字段名)=to_days(now());昨天SELECT*FROM表名WHERETO_DAYS(NOW())-TO_DAYS(时间字段名)<=17天SELECT*F......