我對Postgresql並不熟悉。試圖學習它,因爲我正在將我的Rails應用程序移動到Heroku。Postgresql排序非常奇怪
下面是排序問題的示例。
# select name_kr from users order by name_kr;
name_kr
---------
곽철
김영
박영
안준
양민
이남
임유
정신
차욱
강동수
강상구
강신용
강용석
강지영
강지원
강호석
你可能不懂韓文。但奇怪的是,它首先顯示2個音節詞並且顯示3個音節 - 每個音節在其組中按順序排列。
以下是相關信息:
kwanak_development=# show lc_collate;
lc_collate
-------------
en_US.UTF-8
(1 row)
kwanak_development=# show lc_ctype;
lc_ctype
-------------
en_US.UTF-8
(1 row)
我做了什麼錯?
謝謝。
山姆
附加信息:
我嘗試整理訂單通過,並得到一個有趣的結果。
select name_kr from users order by name_kr collate "ko_KR"; => Same as above
select name_kr from users order by name_kr collate "C"; => Correct Result
您將需要使用排序規則「知道」如何排序韓國。據我所知,這種行爲對en_US來說似乎是正確的。 –
另外,如果您使用PostgreSQL 9.2,請查看「COLLATE」指令。請參閱[整理支持](http://www.postgresql.org/docs/current/interactive/collation.html)。 –
我試過以下,結果是一樣的。從用戶中按name_kr選擇name_kr COLLATE「ko_KR」; –