03_MySQL DQL_排序查询

#进阶3:排序查询
/*
语法:
select 查询列表
from 表名
[where 筛选条件]
order by 排序列表 [asc|desc]

特点:
1、asc升序,desc降序, 如果都不写,默认升序asc
2、排序列表,可以是单个字段,多个字段,可以是表达式,可以是函数,也可以是出现过的别名
3、order by一般是放在查询语句的最后面,本质是最后将查询结果进行排序
4、只有limit子句是放在order by子句后
*/

#案例1: 查询员工信息,要求工资从高到低排序
SELECT * FROM employees ORDER BY salary DESC;
SELECT * FROM employees ORDER BY salary ASC;
#默认升序排列
SELECT * FROM employees ORDER BY salary;

#案例2:查询部门编号>=90的员工信息,要求按照入职先后顺序进行排序
SELECT * FROM employees WHERE department_id >= 90 ORDER BY hiredate;

#案例3:按年薪的高低显示员工信息和年薪【按表达式排序】
SELECT *,salary*12*(1+IFNULL(commission_pct,0)) AS "年薪"
FROM employees
ORDER BY (salary*12*(1+IFNULL(commission_pct,0))) DESC;

#案例4:按年薪的高低显示员工信息和年薪【按别名排序】
SELECT *,salary*12*(1+IFNULL(commission_pct,0)) AS "年薪"
FROM employees
ORDER BY 年薪 DESC;

#案例5:按姓名的长度,排序员工姓名和工资【按函数排序】
SELECT last_name,salary FROM employees
ORDER BY LENGTH(last_name);

#案例6:查询员工信息,要求先按工资排序,再按员工编号排序【按多个字段排序】
SELECT * FROM employees
ORDER BY salary ASC,employee_id DESC;

时间: 2024-11-05 17:27:44

03_MySQL DQL_排序查询的相关文章

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" #查询条件之

Solr4.8.0源码分析(6)之非排序查询

Solr4.8.0源码分析(6)之非排序查询 上篇文章简单介绍了Solr的查询流程,本文开始将详细介绍下查询的细节.查询主要分为排序查询和非排序查询,由于两者走的是两个分支,所以本文先介绍下非排序的查询. 查询的流程主要在SolrIndexSearch.getDocListC(QueryResult qr, QueryCommand cmd),顾名思义该函数对queryResultCache进行处理,并根据查询条件选择进入排序查询还是非排序查询. 1  /** 2 * getDocList ve

mysql根据汉字拼音排序查询

例如现在有一张数据表label,字段为id.name,此表的字符集设置为gb2312,以gb2312_chinese_ci整理. 设置InnoDB引擎的字符集也为简体中文,且整理为gb2312_chinese_ci. 查询语句如下: select * from label order_by name collate gb2312_chinese_ci; 效果如下: tip:有时候结果不是很准确,不知道是不是因为字符集选择的不当导致的,知道的朋友,请解答下,谢谢! mysql根据汉字拼音排序查询,

YUI3的DataTable数据排序查询

YUI3的DataTable组件本身支持数据排序,只要在定义列的时候加上:sortable: true就可以了 这里我们要解决的首先是远程排序问题 远程排序就是所有数据进行排序,而不是表格本身默认的点击后在当页进行排序 这个我们可以通过DataTable组件的sort方法处理 例如: table.after('sort', function(e) { var page = _getCurrentPage(); var key = _getCurrentKey(); doSearch(key, p

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优化分库分表,为什么要分表,分表以后如何进行排序查询,业务如何设计?

MySQL优化分库分表,为什么要分表,分表以后如何进行排序查询,业务如何设计? 昨天面试新人的时候,遇到了这么一个问题,按照自己的想法大体聊了一些,但大多是感性的,并没有完整的了解why and how. 今天查了一些相关的资料,包括<MySQL性能调优与架构设计>.<高性能Mysql>,慢慢的整体理解,请大家指正. 之一,为什么要分表? 分表,按形式,有水平分表和主附分表.水平分表常见于按ID取模或者按日期将相同表结构的内容散列到不同的表上,主附分表常见于有对应关系的多张表,通过

进阶3:排序查询

#进阶3:排序查询/*语法:select 查询列表from 表名[where 筛选条件]order by 排序的字段或表达式; 特点:1.asc代表的是升序,可以省略desc代表的是降序 2.order by子句可以支持 单个字段.别名.表达式.函数.多个字段 3.order by子句在查询语句的最后面,除了limit子句 */ #1.按单个字段排序SELECT * FROM employees ORDER BY salary DESC; #2.添加筛选条件再排序 #案例:查询部门编号>=90的

mysql 排序查询字段

排序查询语法: select 查询字段1from 表where [筛选条件]order by 要排序字段2 asc升序.desc 降序,要排字段3 asc升序.desc降序如果不写默认为升序 案例:查询员工信息,要求工资从高到低排序 SELECT * FROM employees ORDER BY salary DESC; #案例2:查询部门编号>=90,按入职日期升序的员工信息 SELECT * FROM employees WHERE department_id >=90 ORDER BY

elasticsearch 之 排序查询

前提条件 不是所有的字段类型都能排序,只有下面两种类型可以 1.数字 2.日期 排序查询 sort 1.降序 desc GET zhifou/doc/_search { "query": { "match": { "from": "gu" } }, "sort": [ { "age": { "order": "desc" # 按照年龄降序排序 }