IT猫扑网:您身边最放心的安全下载站! 最新更新| 软件分类| 专题汇总| 手机版

您当前所在位置:IT猫扑网 > 数据库 > Oracle > oracle中对排序的总结

oracle中对排序的总结

时间:2015-06-28 00:00 来源:IT猫扑网|http://www.itmop.com/ 作者:网管联盟 我要评论(0)

  -- 按拼音排序 (系统默认)

  select * from perexl order by nlssort(danwei,'NLS_SORT=SCHINESE_PINYIN_M');

  -- 按部首排序

  select * from perexl order by nlssort(danwei,'NLS_SORT=SCHINESE_STROKE_M');

  -- 按笔画排序

  select * from perexl order by nlssort(danwei,'NLS_SORT=SCHINESE_RADICAL_M');

  --排序后获取第一行数据

  select * from (select * from perexl order by nlssort(danwei,'NLS_SORT=SCHINESE_PINYIN_M') )C where rownum=1

  --降序排序

  select * from perexl order by zongrshu desc

  --升序排序

  select * from perexl order by zongrshu asc

  --将nulls始终放在最前

  select * from perexl order by danwei nulls first

  --将nulls始终放在最后

  select * from perexl order by danwei desc nulls last

  --decode函数比nvl函数更强大,同样它也可以将输入参数为空时转换为一特定值

  select * from perexl order by decode(danwei,null,'单位是空', danwei)

  -- 标准的rownum分页查询使用方法

  select *from (select c.*, rownum rn from personnel c)where rn >= 1and rn <= 5

  --在oracle语句rownum对排序分页的解决方案

  --但是如果, 加上order by 姓名 排序则数据显示不正确

  select *from (select c.*, rownum rn from personnel c order by 出生年月)where rn >= 1and rn <= 5

  --解决方法,再加一层查询,则可以解决

  select *from (select rownum rn, t.*from (select 姓名, 出生年月 from personnel order by 出生年月 desc) t)where rn >= 1and rn <= 5

  --如果要考虑到效率的问题,上面的还可以优化成(主要两者区别)

  select *from (select rownum rn, t.*from (select 姓名,出生年月 from personnel order by 出生年月 desc) t where rownum <= 10) where rn >= 3

  --nvl函数可以将输入参数为空时转换为一特定值,下面就是当单位为空的时候转换成&单位是空&

  select * from perexl order by nvl(danwei,'单位是空')

关键词标签:oracle

相关阅读 误删Oracle数据库实例的控制文件 为UNIX服务器设置Oracle全文检索 Oracle数据库如何查找删除重复的SQL语句 Oracle导入导出数据库的语法 oracle数据库安装预环境一键处理脚本 oracle常用DBA命令

文章评论
发表评论

热门文章 误删Oracle数据库实例的控制文件 误删Oracle数据库实例的控制文件 利用Oracle分区表来减少磁盘I/O冲突 利用Oracle分区表来减少磁盘I/O冲突 Oracle数据库优化之数据库磁盘I/O Oracle数据库优化之数据库磁盘I/O 讲解Oracle复制技术的分布式系统同步应用 讲解Oracle复制技术的分布式系统同步应用 刷新Oracle缓存 刷新Oracle缓存 oracle 8080与TOMCAT默认端口冲突 oracle 8080与TOMCAT默认端口冲突

相关下载

人气排行 oracle中使用SQL语句修改字段类型-oracle修改SQL语句案例 Oracle中使用alter table来增加,删除,修改列的语法 ORACLE SQL 判断字符串是否为数字的语句 ORACLE和SQL语法区别归纳(1) oracle grant 授权语句 ORACLE修改IP地址后如何能够使用 如何加速Oracle大批量数据处理 Oracle删除表的几种方法 Oracle 10g创建表空间和用户并指定权限 Oracle连接数太多报错-ORA-12516错误 Oracle字符串截取 连接Oracle数据库的Hibernate配置文件