日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

Oracle排序排除null,oracle 排序(中文,null的处理)

發(fā)布時間:2023/11/27 生活经验 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Oracle排序排除null,oracle 排序(中文,null的处理) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

oracle在9i之前是對漢字的排序是按照二進制編碼進行排序的,很不適合我們的國情,在oracle9i之后,漢字的排序方式有了以下三種方式:

1、使用拼音排序???????NLS_SORT=SCHINESE_PINYIN_M

2、使用筆畫排序???????NLS_SORT=SCHINESE_STROKE_M 第一順序筆畫,第二順序部首;

3、使用偏旁部首排序???NLS_SORT=SCHINESE_RADICAL_M 第一順序部首,第二順序筆畫;

這樣,就可以在查詢的時候,指定漢字的排序方式,設定方式可以分為以下三個級別:

1、語句級別設置排序方式:

按照筆劃排序:

select * from table order by nlssort(col,'NLS_SORT=SCHINESE_STROKE_M');

按照部首排序:

select * from table order by nlssort(col,'NLS_SORT=SCHINESE_RADICAL_M');

按照拼音排序:

select * from table order by nlssort(col,'NLS_SORT=SCHINESE_PINYIN_M');

2、Session級別的設置,修改ORACLE字段的默認排序方式:

按拼音:alter session set nls_sort = SCHINESE_PINYIN_M;

按筆畫:alter session set nls_sort = SCHINESE_STROKE_M;

按偏旁:alter session set nls_sort = NLS_SORT=SCHINESE_RADICAL_M;

3、修改系統(tǒng)參數(shù)(數(shù)據(jù)庫所在操作系統(tǒng)):

set NLS_SORT=SCHINESE_RADICAL_M ;export NLS_SORT (sh)setenv NLS_SORT SCHINESE_RADICAL_M (csh)? HKLCSOFTWAREORACLEhome0NLS_SORT(win注冊表);

網(wǎng)上有人說,oracle9i之后對于漢字的默認排序是拼音排序(SCHINESE_PINYIN_M),但是經過我的實際驗證,發(fā)現(xiàn)不是,排序比較亂,也不知道是不是按照二進制編碼進行排序的。

使用如下方法可以查看oracle的一些默認參數(shù)(注意標紅的參數(shù)值):

Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.1.0

Connected as system

SQL>

SQL> select * from nls_database_parameters;

PARAMETER????????????????????? VALUE

------------------------------ ----------------------------------------------------

NLS_LANGUAGE?????????????????? AMERICAN

NLS_NCHAR_CHARACTERSET???????? UTF8

NLS_TERRITORY????????????????? AMERICA

NLS_CURRENCY?????????????????? $

NLS_ISO_CURRENCY?????????????? AMERICA

NLS_SORT?????????????????????? BINARY

NLS_NUMERIC_CHARACTERS???????? .,

NLS_CHARACTERSET?????????????? AL32UTF8

NLS_CALENDAR?????????????????? GREGORIAN

NLS_DATE_FORMAT??????????????? DD-MON-RR

NLS_DATE_LANGUAGE????????????? AMERICAN

NLS_TIME_FORMAT??????????????? HH.MI.SSXFF AM

NLS_TIMESTAMP_FORMAT?????????? DD-MON-RR HH.MI.SSXFF AM

NLS_TIME_TZ_FORMAT???????????? HH.MI.SSXFF AM TZR

NLS_TIMESTAMP_TZ_FORMAT??????? DD-MON-RR HH.MI.SSXFF AM TZR

NLS_DUAL_CURRENCY????????????? $

NLS_COMP?????????????????????? BINARY

NLS_LENGTH_SEMANTICS?????????? BYTE

NLS_NCHAR_CONV_EXCP??????????? FALSE

NLS_RDBMS_VERSION????????????? 10.2.0.1.0

總結

以上是生活随笔為你收集整理的Oracle排序排除null,oracle 排序(中文,null的处理)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。