• 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

    作者:KeerDi —— 北方的后生

    出处:http://www.cnblogs.com/keerdi/

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    HTML简介
    Tomcat创建项目
    旅游移动端网站—慢!慢!慢!
    云服务正在吞噬世界!
    2016运维团队所需解决方案的5个关键因素
    关于 OneAPM Cloud Test DNS 监控的几个重要问题
    不可忽视的 .NET 应用5大性能问题
    从 IT 中断中学到的最佳监控实践
    衡量企业应用数据库性能的6大指标
    云监控崛起,你落伍了么?
  • 原文地址:https://www.cnblogs.com/123hll/p/6780624.html
Copyright © 2020-2023  润新知