oracle中对排序的总结(按照拼音、部首、笔画排序功能 )
select * from perexl order by nlssort(tangle,'NLS_SORT=SCHINESE_PINYIN_M');
-- 按部首排序
select * from perexl order by nlssort(tangle,'NLS_SORT=SCHINESE_STROKE_M');
-- 按笔画排序
select * from perexl order by nlssort(tangle,'NLS_SORT=SCHINESE_RADICAL_M');
--排序后获取第一行数据
select * from (select * from perexl order by nlssort(tangle,'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 tangle nulls first
--将nulls始终放在最后
select * from perexl order by tangle desc nulls last
--decode函数比nvl函数更强大,同样它也可以将输入参数为空时转换为一特定值
select * from perexl order by decode(tangle,null,'单位是空', tangle)
-- 标准的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(tangle,'单位是空')
转载于:https://www.cnblogs.com/JPAORM/archive/2012/03/27/2510294.html
oracle中对排序的总结(按照拼音、部首、笔画排序功能 )相关推荐
- ORACLE按照拼音,部首,笔画排序
下面的方法需要ORACLE9i和以上的版本才支持. Oracle9i之前,中文是按照二进制编码进行排序的. 在oracle9i中新增了按照拼音.部首.笔画排序功能.设置NLS_SORT值 SCHINE ...
- Oracle中对查询条件进行按拼音/笔画/部首order by排序
nlssort函数的作用是对字段排序,字符串类型的 Oracle9i之前,中文是按照二进制编码进行排序的.在oracle9i中新增了按照拼音.部首.笔画排序功能. 1.按拼音排序: select * ...
- 记录一下,Sqlite,用GB系列编码排序时是按拼音,UTF-8排序是按笔画
为什么80%的码农都做不了架构师?>>> RT 2012年10月12日记录:其实根本原因在于GB编码是按拼音排序的,UTF-8编码是按笔画排序的,sqlite只是比较他们的编码 ...
- php 数组根据字母排序,php 数组 按拼音首字母 排序 并分组
PHP 数组 按照拼音 首字母 排序 并排序: 需要排序的数组 格式: $list = [ [ 'name' => '张三', 'py' => 'zhnagsan' ], [ 'name' ...
- oracle 中几种排序方法
一.随机排序: select * from tablename order by dbms_random.value); 这种方法一般随机取前几行记录比较有用.对于10W以上的记录,采取抽样的 ...
- php jsp显示数据排序,JSP_SQL数据库开发中的一些精典代码,1.按姓氏笔画排序: select * From T - phpStudy...
SQL数据库开发中的一些精典代码 1.按姓氏笔画排序: select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke ...
- 【我的Android进阶之旅】Android实现中文汉字笔划(笔画)排序、中文拼音排序、英文排序的国家地区选择界面
一.需求描述 最近要做一个类似微信的,在登录界面选择国家地区的功能,微信有中文汉字笔画排序以及中文拼音排序等几种方式,如下所示: 微信:简体中文.拼音排序 微信:繁体中文.笔画排序 微信 英文 字母排 ...
- oracle中排序--拼音、笔画、偏旁部首
1 . 提供一个中文字段按拼音排序的方法: select empname from tab_name order by nlssort(empname,'nls_sort=schinese_pinyi ...
- oracle排序非英文最后,Oracle中中文、数字,英文混杂形式的字段进行排序的方法...
http://blog.csdn.net/p451933505/article/details/9272257 对Oracle中中文.数字.英文混杂形式的字段进行排序的方法: 例如: order by ...
最新文章
- 页面与ViewModel(上)
- linux能修复根目录硬盘,Linux系统报错修复的方法
- .Net 3.5新特性(1)Automatic Properties, Object Initializers, and Collection Initializers
- 查看linux安装redis的位置,linux查看是否安装redis
- print输出字体特效
- react --- Hook的使用
- 【渝粤题库】陕西师范大学201661英语阅读(二)作业(高起专)
- 自定义控件android.r,Android控件架构与自定义控件
- 【OP放大器】在不拆开OP放大器的情况下查一查它是否坏掉或饱和。
- 【转载】C/C++预处理指令
- Vue.js安装方法
- 问题六十八: 着色模型(shading model)(0)——《Ray Tracing from the Ground Up》代码的移植
- 什么软件可以查月经周期,检测月经周期的软件
- FME 应用cad处理
- 活动回顾 | 大咖云集“开源安全治理模型和工具”线上研讨会
- LTE CQI/PMI 上报机制
- 服务器-----tomact服务器工作原理及其工作报错
- Linux 添加开机启动项的三种方法
- html打开方式解锁,解锁bootloader
- mac apache 重启
热门文章
- codeforce Gym 101102A Coins (01背包变形)
- Spring Cache使用详解
- Unieap3.5-Grid编辑列中数字与下拉改变
- sparkR介绍及安装
- 那些年学过的Hibernate笔记
- Linux操作Oracle(16)——Oracle扩容报错:ORA-01144_表空间数据文件超出最大限制
- 数据分析学习笔记——Pandas库思维导图
- node服务器给客户端发消息,上的node.js发送消息客户端 - 服务器 - 客户端上socket.io(Sen...
- 小米相机曝光_小米11pro曝光,超级屏+双6400万+骁龙875,不愧是小米旗舰
- mysql a锁_MYSQL中的锁