最近工作碰到客户的特殊要求,需要将特定的数据排序在前面,然后才按时间顺序排序,这个之前还真没有碰到过,好在有万能的度娘,搜索了一下,发现可以实现,使用order by decode语句即可。

对于order by熟悉SQL的朋友都知道了,而decode是oracle的函数,解释如下:

语法使用:DECODE(value, if1, then1, if2,then2, if3,then3, . . . else )

Value 代表某个表的任何类型的任意列或一个通过计算所得的任何结果。当每个value值被测试,如果value的值为if1,Decode 函数的结果是then1;如果value等于if2,Decode函数结果是then2;等等。事实上,可以给出多个if/then 配对。如果value结果不等于给出的任何配对时,Decode 结果就返回else 。

总结:简单来说就是if then的使用集合在一个函数中。有了这个函数,不但让SQL更简洁,而且可以应用到多处场合,今天说说应用于order by 之后,让指定内容排在前面。

例如有如下表TEST:

编号

姓名

年龄

分数

A001

小红

20

90

A002

小蓝

31

100

A003

小黑

27

98

A004

小白

35

93

A004

小紫

25

100

要求,25岁排序在前面,然后按分数排序,这时就需要使用order by decode语句了。

查询语句为:

SELECT * FROM TEST ORDER BY DECODE(年龄,25,分数)

查询结果如下:

这就是DECODE函数强大之处,在SQL SERVER或MY SQL等数据库,估计实现这样的排序会有点复杂,但ORACLE中只需要order by decode却可。

等等,别走! ^_^

好消息,快手官方发红包啦,登录即送2元,秒提现! 查看详情>>

oracle怎么以时间排序,oracle指定数据排序在前面怎么处理相关推荐

  1. oracle如何查询时间格式,oracle时间格式讨论

    1. oracle对时间格式的数据存贮 Oracle以特定的存储格式来存储时间,占7个字节,与查询显示的时间无关.存贮的时间包括年月日时分秒,最小精度为秒,不存贮秒以下的时间单位.因此在一些前台支持毫 ...

  2. oracle查对象创建时间,oracle:查询某个时间之后,指定用户,指定对象类型,并创建的表的个数...

    SQL> select COUNT(*) from dba_objects where created< to_date('17-01-14','dd-mm-y y')  AND owne ...

  3. oracle rman备份时间点,Oracle Rman 控制RMAN的备份时间,减少IO消耗

    一.问题描述 由于服务器配置不高,备份策略为周末全备.周一至周六差异备份. 平时服务器CPU使用30%左右. 全备份时,开启两个通道,CPU达到70%-80%左右,业务不卡顿.不掉单,session不 ...

  4. oracle sql比较时间大小,Oracle数据库中日期时间的操作比较和加减

    Oracle数据库中日期时间的操作比较和加减 Oracle关于时间/日期的操作 1.日期时间间隔操作 当前时间减去7分钟的时间 select sysdate,sysdate - interval '7 ...

  5. 查看oracle会话空闲时间,使用Oracle PROFILE控制会话空闲时间

    客户想实现对会话空闲时间的控制,下面是做的一个例子. Microsoft Windows [版本 6.1.7601] 版权所有 (c) 2009 Microsoft Corporation.保留所有权 ...

  6. oracle数据库定时任务时间设置,oracle定时任务(dbms_job)的时间设置参考

    最后那一项可以参考如下: 每天午夜12点 'TRUNC(SYSDATE + 1)' 每天早上8点30分 'TRUNC(SYSDATE + 1) + (8*60+30)/(24*60)' 每星期二中午1 ...

  7. oracle最大空闲时间,使用Oracle PROFILE控制会话空闲时间

    Oracle推荐PROFILE和SQLNET.EXPIRE_TIME一起使用,但由于PL/SQL工具本身的特点,它会在SESSION的状态变成SNIPED(PROFILE IDLE_TI 客户想实现对 ...

  8. oracle查询sql时间ain,Oracle SQL 时间查询

    一.在使用Oracle的to_date函数来做日期转换时,很多Java程序员也许会和我一样,直觉的采用ldquo;yyyy-MM-dd HH:mm:ssrdquo;的 to_date()与24小时制表 ...

  9. oracle发邮件时间不对,oracle 发邮件错误

    oracle 发邮件错误 下面存储过程执行后有错误, create or replace procedure test_mail(msg_subject in varchar2, mes_contex ...

最新文章

  1. Win2003 Server手动设置全攻略
  2. 如何面试java后端_近期面试Java后端的一些感悟
  3. redis异常解决:JedisDataException: ERR Client sent AUTH, but no password is set
  4. php的addslashes,PHP addslashes()用法及代码示例
  5. CentOS 7上搭建Spark3.0.1+ Hadoop3.2.1分布式集群
  6. 图解HTTP协议笔记
  7. Python的字符串格式化 %r %s
  8. HTTP长连接与短链接以及推送技术原理
  9. 2022-2028年中国矿用减速机行业全景调查与投资方向研究报告
  10. 360众筹网_360众筹平台
  11. HDU6348 Buy and Resell
  12. 组件化、模块化、Composing Builds
  13. 集合类 CList的使用
  14. Unexpected token u in JSON at position 0报错如何解决?
  15. crawler爬虫抓取数据
  16. Unable to load authentication plugin ‘caching_sha2_password‘
  17. 游戏开发存档版本号的妙用
  18. TP-LINK WR941N 拆机全记录
  19. linux怎么把dos改成unix_dos2unix命令 – 将DOS格式的文本文件转换成UNIX格式
  20. 2018年第二届河北省大学生程序设计竞赛

热门文章

  1. 为了让盲人也能追剧,优酷做了哪些努力?
  2. 一文纵览自然语言生成的发展
  3. 如何使用阿里云ARMS诊断Java服务端报错问题
  4. 一文看懂Microsoft Azure的十年变迁
  5. Storm精华问答 | Kafka在Storm中的角色是什么?
  6. 要闻君说:谷歌云重磅发布两大技术平台;以后可以打飞滴了?SAP重组动荡;微软宣布 Azure Functions 支持 Java...
  7. Gartner预测2019年全球IT支出将达到3.8万亿美元
  8. 有问有答 | Storm技术内幕与实践精华问答
  9. python冒泡排序实验报告_python中的冒泡排序
  10. python zip压缩_Python zip压缩与解压(zipfile模块实例)