SQL查询结果排序
《第二章:查询结果排序》
1:以指定的次序返回查询结果
条件:显示部门10中员工名字,职位和工资并按照工资升序排列:升序asc 降序desc
SELECT ename,job,sal FROM emp WHERE deptno='10' ORDER BY sal asc;
2:按照多个字段排序
表中按照DEPTNO的升序排列然后按照工资降序排列;
SELECT empno,deptno,sal,ename,job FROM emp ORDER BY deptno,sal DESC;
3:按照子串排序
按照字符串的某一部分对查询结果排序,从EMP表中返回员工名字和职位,并且按照职位字段最后两个字符排序
SELECT ename,job FROM emp ORDER BY SUBSTR(job,LENGTH(job)-2);
4:对字母数字混合的数据排序
现有字母数字混合的数据,按照数字或字符部分排序
CREATE view V AS SELECT ename||''||deptno AS data from emp select * from V
5:处理排序空值
EMP中根据comm排序结果但是这个字段可以为空值需要指定是否将空值排序在最后
SELECT ename,sal,comm FROM emp ORDER BY 3; (还可以根据升序,降序进行排序)
6:根据数据项键排序
根据某些条件逻辑排序,列如Job是TES根据comm来排序,否则根据SAL排序;
在ORDER BY子句中使用CASE表达式:
SELECT ename,sal,job,comm FROM emp ORDER BY CASE WHEN job='TAB' THEN comm ELSE sal END
使用CASE表达式来动态改变如何对结果排序,传递给ORDER BY的值类似这样
SELECT ename,sal,job,comm, CASE WHEN job='TAB' THEN comm ELSE sal END AS ORDERED FROM emp ORDER BY 5
SQL查询结果排序的更多相关文章
- 不简单的SQL查询和排序语句
真不简单!! 一:使用select语句进行查询 语法: SELECT <列名> FROM <表名> [WHERE <查询条件表达式>] [OR ...
- 浅析SQL查询语句未显式指定排序方式,无法保证同样的查询每次排序结果都一致的原因
本文出处:http://www.cnblogs.com/wy123/p/6189100.html 标题有点拗口,来源于一个开发人员遇到的实际问题 先抛出问题:一个查询没有明确指定排序方式,那么,第二次 ...
- [原创]java WEB学习笔记92:Hibernate学习之路-- -QBC 检索和本地 SQL 检索:基本的QBC 查询,带 AND 和 OR 的QBC,统计查询,排序,分页
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- oracle SQL语句练习MERGE、模糊查询、排序、
Oracle支持的SQL指令可分为数据操作语言语句.数据定义语言语句.事务控制语句.会话控制语句等几种类型:1.数据操作语言语句数据操作语言语句(Data manipulation language, ...
- sql查询调优之where条件排序字段以及limit使用索引的奥秘
奇怪的慢sql 我们先来看2条sql 第一条: select * from acct_trans_log WHERE acct_id = 1000000000009000757 order b ...
- JPA或Hibernate中使用原生SQL实现分页查询、排序
发生背景:前端展示的数据需要来自A表和D表拼接,A表和D表根据A表的主键进行关联,D表的非主键字段关联C表的主键,根据条件筛选出符合的数据,并且根据A表的主键关联B表的主键(多主键)的条件,过滤A表中 ...
- SQL语句(十)查询结果排序
查询结果排序 使用ORDER BY 子句 SELECT <列名列表> FROM <表名> [WHERE 条件] ORDER BY <字段名1> [ASC|DESC] ...
- SQL.Cookbook 读书笔记2 查询结果排序
第二章 查询结果排序 2.1 按查询字段排序 order by sal asc; desc;-- 3表示sal 2.2 按子串查询 );--按job的最后两个字符排序 2.3 对字符数字混合排序 cr ...
- SQL语句分组排序,多表关联排序
SQL语句分组排序,多表关联排序总结几种常见的方法: 案例一: 在查询结果中按人数降序排列,若人数相同,则按课程号升序排列? 分析:单个表内的多个字段排序,一般可以直接用逗号分割实现. select ...
随机推荐
- vue中使用滚动效果
new Vue({ el: '#app', data: function data() { return { bottom: false, beers: [] }; }, watch: { botto ...
- E. Reachability from the Capital(tarjan+dfs)
求联通分量个数,在dfs一次 #include <iostream> #include <algorithm> #include <cstring> #includ ...
- 1、Go base64编码
package main import ( "encoding/base64" "fmt") func main() { //标准base64编码 data:= ...
- java源码学习
Collection List ArrayList LinkedList Vector Stack Set HashSet TreeSet Map HashMap TreeMap LinkedHash ...
- 删除小脚本 srm
提示:只能删除当前路径下的目录或文件 #!/bin/bash #将测试好的脚本,拷贝到 $PATH 能够搜索到目录下.并且改名 例如: /usr/local/bin cp /test/srm.sh / ...
- linux虚拟机拓展大小
http://blog.csdn.net/wutong_login/article/details/40147057?utm_source=tuicool http://www.linuxidc.co ...
- 网络载入数据和解析JSON格式数据案例之空气质量监測应用
一.创建一个新的项目 activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res ...
- [Android随笔]内存泄漏以及内存溢出
名词解释 内存泄漏:memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄漏危害能够忽略,但内存泄漏堆积后果非常严重,不管多少内存,迟早会被占光. 内存溢出:out of ...
- Android禁止ViewPager的左右滑动
转载请注明出处:http://blog.csdn.net/allen315410/article/details/40744287 有时候在开发中会遇到一些"诡异"的要求,比方在V ...
- windows server,无桌面服务器 , 批处理更改时区
windows server,无桌面服务器 , 批处理更改时区 time /t cmd.exe /c Control.exe TIMEDATE.CPL,,/Z "China Standard ...