暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

【每日一练 003 】SQL : order by 排序子句

原创 李美静 2020-06-17
2950

1 语法:
select expr from table
[where condition(s)]
[order by {colum,expr,numeric_position} [asc | desc] ];
order by :指定了被浏览行的顺序
asc:以升序排序,是默认的排序方式
desc:以降序排序
对于空值的排序,可以使用NULLS FIRST或NULLS LAST来设置空值出现在最前边还是最后边。
2 整体框架
image.png
3 order by 子句后面可以是:
列名:按照列的值排序
如果列的值是数值类型,那么默认按照数值的升序排,最小值先出现
如果列的值是Date时间类型,那么默认按照时间的升序排,最小时间先出现
如果列的值是字符,那么按照字母的顺序排序
空值默认按照升序排序,显示在最后边,指定降序时,显示在最前边。
如:按照员工入职日期降序排序
SELECT last_name, job_id, department_id, hire_date
FROM employees
ORDER BY hire_date DESC ;
别名:别名如果加双引号了,在order by 后边也要加双引号
如:
SELECT employee_id, last_name, salary*12 “Annsal”
FROM employees
ORDER BY “Annsal” ;
列的位置号
如:以select 后边的第三个列排序
SELECT last_name, job_id, department_id, hire_date
FROM employees
ORDER BY 3;
多个列排序:先按部门号排序,然后在部门内部按照工资降序排序
SELECT last_name, department_id, salary
FROM employees
ORDER BY department_id, salary DESC;
3 练习题
下面哪个语句关于order by子句是正确的?
A)如果指定了按照位置号来排序,那么数值类型的数据会按降序排
B)对字符排序时,大小写是敏感的
C)只有在select子中指定的列,才能排序
D)在排序语句中,不会对空值进行处理。

【答题小贴士】:
1、以墨天轮文章的形式解析题目并给出答案
2、将墨天轮文章链接发送到此文的评论区

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论