oracle資料庫中文漢字排序

2022-04-09 09:35:39 字數 627 閱讀 8634

oracle資料庫中文漢字排序

今天需要按oracle資料庫中某個表的某個中文字段進行排序,本來感覺挺簡單的乙個東西,不就是乙個order by嘛,可是寫完了發現拍的並不對,一時間感到不可思議,又查詢,發現果然有這個問題,經過查資料發現,oracle對中文的排序是按照asc碼的值進行排序的,後來又經過查閱資料發現了乙個他的函式 

1、按照拼音排序:

select * from your_table_name t order by nlssort(t.ordered_column_name,'nls_sort=schinese_pinyin_m')

2、按照筆畫數排序:

select * from your_table_name t order by nlssort(t.ordered_column_name,'nls_sort=schinese_stroke_m')

3、按照偏旁部首排序:

select * from your_table_name t order by nlssort(t.ordered_column_name,'nls_sort=schinese_radical_m')

解釋:schinese_pinyin_m====>simplified chinese pinyin mode

oracle資料庫中文排序

oracle資料庫中文排序 oracle資料庫中文拼音排序問題,nls sort設定 zz oracle9i之前,中文是按照二進位制編碼進行排序的。在oracle9i中新增了按照拼音 部首 筆畫排序功能。1 設定nls sort引數值 schinese radical m 按照部首 第一順序 筆劃 ...

Oracle資料庫中文亂碼

字符集是oracle為適應不同語言文字顯示而設定的。用於漢字顯示的字符集主要有zhs16cgb231280 zhs16gbk us7ascii和utf 8等。字符集同時存在於伺服器端和客戶端。伺服器端字符集是在安裝oracle時指定的,字符集登記資訊儲存在oracle資料庫字典的v nls para...

Oracle漢字排序

使用一下sql t 0303003 bystock holder 進行選取資料時 stock holder為存放中文的字段 結果發現兩庫返回的記錄順序不一致。琢磨之後應該為字符集問題,乙個庫字符集為系統預設字符集,另乙個庫為utf 8字符集。查詢資料後發現,對於中文字段的排序,應該使用以下方式 按拼...