SQL语句排序(非常重要)

from——where——group by——having——select——distinct——order by——limit

代码块
select * from student where class='ec14' group by gender having  age>18    order by name desc  LIMIT 5

1.找到表:from

2.拿着where指定的约束条件,去文件/表中取出一条条记录

  1. 将取出的一条条记录进行分组group by,如果没有group by,则整体作为一组

4.将分组的结果进行having过滤

5.执行select

6.去重distinct

7.将结果按条件排序:order by(asc/desc)

8.limit前多少条

原文地址:https://www.cnblogs.com/hellosiyu/p/12501668.html

时间: 2024-10-16 02:29:08

SQL语句排序(非常重要)的相关文章

sql语句-排序后加入序号再运算判断取想要的项

select a.id as aid,b.id as bid,a.city,a.cang,a.sid,a.time as atime,b.time as btime,a.price as aprice,b.price as bprice,a.pm as apm,b.pm as bpm from (select id,city,cang,sid,time,price,@rank:[email protected]+1 as pm  from cai,(SELECT @rank:=0) B  gro

数据库SQL语句学习笔记(3)-排序检索数据

1.排序数据 如果不排序,数据一般将以它在底层表中出现的顺序显示,这有可能是数据最初添加到表中的顺序.但是如果数据随后进行过更新或删除,这个顺序就会受到DBMS重用回收存储空间的方式的影响. 子句:SQL语句由子句构成,有些子句是必须的,有些则是可选的.一个子句通常是由关键字加上所提供的数据组成.例如我们上个笔记中提到的SELECT语句中的FROM子句. 排序需要用到ORDER BY子句 SELECT prod_name FROM Products ORDER BY prod_name; 一定要

oracle SQL语句练习MERGE、模糊查询、排序、

Oracle支持的SQL指令可分为数据操作语言语句.数据定义语言语句.事务控制语句.会话控制语句等几种类型:1.数据操作语言语句数据操作语言语句(Data manipulation language,DML)用于进行数据的检索和更新操作.数据检索是数据库应用中使用频率最高的操作类型,因此数据检索的效率对数据库的整体性能影响显著.数据更新包括数据的插入.修改和删除等操作,数据更新操作具有一定的风险性,在其执行过程中DBMS必须保证数据的一致性,以确保数据有效.SELECT.INSERT.DELET

Mysql数据库里面的String类型依照数字来排序以及按时间排序的sql语句

今天做项目的时候,遇到个小小的问题,在数据库中查询的时候,要用String类型的ID进行一下排序!(注:ID字段为 varchar 类型) 解决的方法: 如: Sql代码 SELECT * FROM  Student WHERE 1 = 1 ORDER BY -ID DESC 或者: Sql代码 SELECT * FROM  Student WHERE 1 = 1 ORDER BY (ID + 1) mysql时间格式化,按时间段查询MYSQL语句   2011-04-15 09:01:08| 

Mysql数据库里面的String类型按照数字来排序以及按时间排序的sql语句

今天做项目的时候,遇到个小小的问题,在数据库中查询的时候,要用String类型的ID进行一下排序!(注:ID字段为 varchar 类型) 解决办法: 如: Sql代码 SELECT * FROM  Student WHERE 1 = 1 ORDER BY -ID DESC 或者: Sql代码 SELECT * FROM  Student WHERE 1 = 1 ORDER BY (ID + 1) mysql时间格式化,按时间段查询MYSQL语句   2011-04-15 09:01:08| 

ORACLE中用rownum分页并排序的SQL语句

ORACLE中用rownum分页并排序的SQL语句 以前分页习惯用这样的SQL语句: select * from (select t.*,rownum row_num from mytable t order by t.id) b where b.row_num between 1 and 10 结果发现由于该语句会先生成rownum 后执行order by 子句,因而排序结果根本不对,后来在GOOGLE上搜到一篇文章,原来多套一层select 就能很好的解决该问题,特此记录,语句如下: sel

面试题:求SQL语句:求数据库内各表大小,并排序列出

几天去浦东一家公司去面试,感觉有一道关于数据库查询的题目没答好,自我总结下,下次注意. 题目:求数据库内各表大小,并排列出.写出相应的SQL语句. 代码如下: CREATE PROCEDURE [dbo].[GetTableSpace] @dbName sysname = '', --数据库名,默认当前数据库 @tableName sysname = '', --表名,默认全部表 @columnName varchar(50) = '', --列名,排序用 @sort varchar(4) =

sql 语句按字段指定值排序及分页

为特定字段赋值并排序 表[Table_temp]中列[col1]为字符,属性为varchar(10),排序时需要按照B.A.C的顺序显示,则可按照以下SQL语句: select * from Table_temp order by case when col1='B' then 1 when col1='A' then 2 when col1='C' then 3 end sql语句分页(OFFSET(@Page - 1) * @PageSize ROWS FETCH NEXT @PageSiz

SQL语句检索数据排序及过滤

阅读目录 一:排序检索数据 二:过滤数据 三:高级数据过滤 四:用通配符进行过滤 回到顶部 一:排序检索数据 1.1 排序数据 比如查询数据库中表数据的时候,我们使用如下语句: select * from user; 如下所示: 但是上面查询出来的数据并没有排序过的,因此如果我们想让数据进行排序,我们可以使用 order by子句.order by 子句会以字母顺序排序数据的.如下排序代码: select * from user order by username; 如上的含义是:查询user表