MYSQL结果排序、分页查询、聚合函数

结果排序

使用ORDER BY子句将查询记录进行排序,
ASC   : 升序,缺省。
DESC : 降序。
ORDER BY 子句出现在SELECT语句的最后。
格式:
SELECT <selectList>
FROM table_name
WHERE 条件
ORDER BY 列名1 [ASC/DESC],列名2 [ASC/DESC]...;
-------------------------------------------------------
按单列排序:
需求:选择id,货品名称,分类编号,零售价并且按零售价降序排序
按多列排序:
需求: 选择id,货品名称,分类编号,零售价先按分类编号排序,再按零售价排序
------------------------------------------------------
需求:查询M系列并按照批发价排序(加上别名)
需求:查询分类为2并按照批发价排序(加上别名)

注意:不能使用中文的别名排序。
--------------------------------------------------------------------------
SELECT语句执行顺序:
先执行FROM--->接着执行WHERE--->再执行SELECT--->最后执行ORDER BY

  

分页查询

假分页/逻辑分页/内存分页:
            一次性查询出所有的数据,存放在内存中(List集合),每次翻页的时候,都从内存中取出指定的条数.
            特点:翻页比较快,如果数据量过大,可能造成内存溢出.
真分页/物理分页/数据库分页(推荐):
            每次翻页都从数据库中截取指定的条数,假设每页10条数据,第一页:查询0~9条数据,第二页:查询10~19条数据.
            特点:翻页比较慢,不会造成内存溢出.
---------------------------------------------------------------------------------------------------------
MySQL的分页设计:
             int pageSize = 3;//表示每页最多显示3条数据.
分页查询结果集的SQL:
       SELECT * FROM  表名    LIMIT  ?,?;
       第一个?:(currentPage - 1) * pageSize;
       第二个?:pageSize
第一页:SELECT * FROM `product` LIMIT 0, 3
第二页:SELECT * FROM `product` LIMIT 3, 3
第三页:SELECT * FROM `product` LIMIT 6, 3

聚合函数

什么是聚集函数:
聚集函数作用于一组数据,并对一组数据返回一个值。
-------------------------------------------------------
COUNT:统计结果记录数
MAX:  统计计算最大值
MIN:  统计计算最小值
SUM:  统计计算求和
AVG:  统计计算平均值
-------------------------------------------------------
需求:查询所有商品平均零售价
需求:查询商品总记录数(注意在Java中必须使用long接收)
需求:查询分类为2的商品总数
需求:查询商品的最小零售价,最高零售价,以及所有商品零售价总和

  

原文地址:https://www.cnblogs.com/Xingtxx/p/10801380.html

时间: 2024-10-12 04:37:05

MYSQL结果排序、分页查询、聚合函数的相关文章

MYSQL查询--聚合函数查询

聚合函数查询 聚合函数的最大特点是它们根据一组数据求出一个值.聚合函数的结果值只根据选定行中非NULL的值进行计算,NULL值被忽略. COUNT()函数 COUNT()函数,对于除"*"以外的任何参数,返回所选择集合中非NULL值的行的数目:对于参数"*",返回选择集合中所有行的数目,包含NULL值的行.没有WHERE子句的COUNT(*)是经过内部优化的,能够快速的返回表中所有的记录总数. 例子: select COUNT(*) from info; 查询结果:

分页查询信息(使用jdbc连接mysql数据库实现分页查询任务)

         分页查询信息       使用jdbc连接mysql数据库实现分页查询任务 通过mysql数据库提供的分页机制,实现商品信息的分页查询功能,将查询到的信息显示到jsp页面上. 本项目时一个简单的运用eclipse+jdbc+mysql的小程序. 连接的数据库名称为db_database11,属性如下: 1.创建名为com.pmf.bean的包,包中是名为Product的类,用于封装商品信息. 全部代码如下: package com.pmf.bean; /** * 商品 * */

0831 模糊查询,排序查询,聚合函数,时间日期函数,数学函数,字符串函数

create database lianxi0720gouse lianxi0720gocreate table student( code int not null,--学号,不可为空 name varchar(10),--学生姓名 sex varchar(10),--性别 banji varchar(10),--班级 yufen decimal(18,2),--语文分数 shufen decimal(18,2),--数学分数 yingfen decimal(18,2),--英语分数)go--

MySQL、Oracle分页查询

mysql分页 需用到的参数: pageSize 每页显示多少条数据 pageNumber 页数 从客户端传来 totalRecouds 表中的总记录数 select count (*) from 表名 totalPages 总页数 totalPages=totalRecouds%pageSize==0?totalRecouds/pageSize:totalRecouds/pageSize+1 pages 起始位置 pages= pageSize*(pageNumber-1) SQL语句: se

MySQL数据库实现分页查询的SQL语句写法!

一:分页需求: 客户端通过传递start(页码),limit(每页显示的条数)两个参数去分页查询数据库表中的数据,那我们知道MySql数据库提供了分页的函数limit m,n,但是该函数的用法和我们的需求不一样,所以就需要我们根据实际情况去改写适合我们自己的分页语句,具体的分析如下: 比如: 查询第1条到第10条的数据的sql是:select * from table limit 0,10;   ->对应我们的需求就是查询第一页的数据:select * from table limit (1-1

MySQL随记 - 分页查询

# 进阶8:分页查询 /* 语法: select 查询列表 ⑦ from 表 ① [join type] join 表2 ② on 连接条件 ③ where 筛选条件 ④ group by 分组字段 ⑤ having 分组后的筛选 ⑥ order by 排序的字段 ⑧ limit 起始索引(offset), 条目个数(size) ⑨ 特点: size = 10 page 1 0 2 10 3 20 limit (page-1) *size, size; */ # 案例:查询前5条员工信息 SEL

mysql数据库表单查询和函数的使用

单表查询 准备一张雇员表company.employee 雇员编号 emp_id   int 雇员姓名 emp_name  varchar(30) 雇员性别 sex  enum 雇用日期 hire_date  date 职位  post  varchar(50) 职位描述 job_description  varchar(50) 薪水 salary double(15,2) 办公室office int 部门编号 dep_id int 一.表的简单查询 Select * from employee

Oracle、MySQL和SqlServe分页查询的语句区别

★先来定义分页语句将要用到的几个参数: int currentPage ; //当前页 int pageRecord ; //每页显示记录数 以之前的ADDRESSBOOK数据表为例(每页显示10条记录): 一.SqlServe下载 数据库分页语句 Java代码   String sql = "select top "+pageRecord +" * from addressbook where id not in (select top "+(currentPag

2016/3/13 七种查询 (普通查询 条件查询 排序查询 模糊查询 统计查询 分组查询 分页查询 )

一句话概括的话,SQL作为结构化查询语言,是标准的关系型数据库通用的标准语言: T-SQL 是在SQL基础上扩展的SQL Server中使用的语言 1,普通查询 #查询Info表中的所有列 select * from Info #查询Info表中的Name和Code列 select Name,Code from Info 2,条件查询 关键字where #查询Info表的左右列 限定范围 列名为p001 select * from Info where 列名="p001" #查询条件之

oracle,mysql,SqlServer三种数据库的分页查询总结

MySql: MySQL数据库实现分页比较简单,提供了 LIMIT函数.一般只需要直接写到sql语句后面就行了. LIMIT子 句可以用来限制由SELECT语句返回过来的数据数量,它有一个或两个参数,如果给出两个参数, 第一个参数指定返回的第一行在所有数据中的位置,从0开始(注意不是1),第二个参数指定最多返回行数.例如: select * from table    LIMIT 10;    #返回前10行 select * from table    LIMIT 0,10; #返回前10行