ORACLE Postgresql中文排序

当我们order排序不能够实现我们想要的内容时候,尝试一下NLSSORT这个函数吧

他不仅仅按照姓氏排序,名也会排序:

  • nls_param用于指定语言特征,格式为nls_sort      = sort,nls_sort值为:
  • 按照部首排序:SCHINESE_RADICAL_M
  • 按照笔划排序:SCHINESE_STROKE_M
  • 按照拼音排序:SCHINESE_PINYIN_M

TEST=# select * from helei order by nlssort(name,‘NLS_SORT= SCHINESE_PINYIN_M‘);

NAME

------

阿红

曹丽

陈璐

陈楠

陈哲

仇三

初一

初哲

贺李

王明

时间: 2024-10-25 19:16:55

ORACLE Postgresql中文排序的相关文章

oracle针对中文排序

在oracle 9i之前,对中文的排序,是默认按2进制编码来进行排序的. 9i时增加了几种新的选择: 按中文拼音进行排序:SCHINESE_PINYIN_M 按中文部首进行排序:SCHINESE_RADICAL_M 按中文笔画进行排序:SCHINESE_STROKE_M 而oracle 9i是对中文的排序是默认按拼音排序(并不是指NLS_SORT = SCHINESE_PINYIN_M,而是说SQL中不指定NLS_SORT时对中文列排序时默认按拼音)的,跟之前的2进制编码排序有所不同.具体用法如

ORACLE的order by中文排序

在使用order by排序的时候,出现如下情况:   印象中中文排序应该默认是按照拼音排序的,为何"鑫"会排在"中"的后面呢?猜想order by是不是根据对应字符的ASCII码排的呢,因此列出了对应的ASCII,如下:   由此基本可以断定,确实是通过ASCII的大小来排序的,这也解释了为什么数字会排在字母之前,字母为什么会排在汉字之前的现象.但是为什么会出现汉字默认是通过拼音排序的错觉呢,于是查了一下汉字的编码规则,有提到如下一句:       "一级

oracle数据库中文汉字排序

oracle数据库中文汉字排序 今天需要按oracle数据库中某个表的某个中文字段进行排序,本来感觉挺简单的一个东西,不就是一个order by嘛,可是写完了发现拍的并不对,一时间感到不可思议,又查询,发现果然有这个问题,经过查资料发现,Oracle对中文的排序是按照ASC码的值进行排序的,后来又经过查阅资料发现了一个他的函数 1.按照拼音排序: select * from your_table_name t order by nlssort(t.ordered_column_name,'NLS

Oracle中中文、数字,英文混杂形式的字段进行排序的方法

http://blog.csdn.net/p451933505/article/details/9272257 对Oracle中中文.数字.英文混杂形式的字段进行排序的方法: 例如: order by NLSSORT(字段名,'NLS_SORT = SCHINESE_PINYIN_M'), to_number(translate(字段名, '0123456789' || 字段名, '0123456789')) NLSSORT() 函数: 可以使用NLSSORT()函数可以改变Oralce 对汉字

Oracle 中文排序 NLSSORT NLS_SORT

今天发现了个挺有意思的函数:NLSSORT,发现能给中文按拼音.笔画.部首排序,遂查了下相关资料,结果如下: Oracle 9i开始,新增了按照拼音.部首.笔画排序功能. 通过设置NSL_SORT值来实现: SCHINESE_RADICAL_M 按照部首(第一顺序).笔划(第二顺序)排序 SCHINESE_STROKE_M 按照笔划(第一顺序).部首(第二顺序)排序 SCHINESE_PINYIN_M 按照拼音排序 实现中文排序有两种常见方式: session级 ALTER SESSION SE

oracle的中文排序问题

mysql中文排序有convert(name using gbk)这样的函数,于是研究了一下oracle中文排序: 使用拼音排序 SQL> select * from chineseordertest order by nlssort(name,'NLS_SORT=SCHINESE_PINYIN_M'); NAME ---------------------------------------- A语言 汉文 日文 中文 使用笔画排序 SQL> select * from chineseord

PHP与MYSQL中UTF8 中文排序例子

1. 需要在php数组中用中文排序,但是一般使用utf8格式的文件,直接用asort排序不行.用gbk和gb2312可以.这跟几种格式的编码有关系.gbk和gb2312本身的编码就是用拼音排序的. 代码如下 复制代码 function utf8_array_asort(&$array){if(!isset($array) || !is_array($array)){return false;}foreach($array as $k=>$v){$array[$k] = iconv('UTF-

【基于WPF+OneNote+Oracle的中文图片识别系统阶段总结】之篇四:关于OneNote入库处理以及审核

篇一:WPF常用知识以及本项目设计总结:http://www.cnblogs.com/baiboy/p/wpf.html 篇二:基于OneNote难点突破和批量识别:http://www.cnblogs.com/baiboy/p/wpf1.html 篇三:批量处理后的txt文件入库处理:http://www.cnblogs.com/baiboy/p/wpf2.html 篇四:关于OneNote入库处理以及审核:http://www.cnblogs.com/baiboy/p/wpf3.html [

iOS 中文排序

这里分享一个中文排序的一个便捷方法,整理了一个网络的资源自己封装成一个类别方便以后使用, 这里贴出使用的方法,源码可以在本文最后下载. 要记得加头文件 #import "NSArray+SortedChinAndEng.h" 这个头文件在源码中. NSArray *[email protected][ @"小明", @"微博", @"你好", @"小米", @"腾讯", @"再