PostgreSQL 10のICUコレーションを使うと日本語を普通にソートでき、更に文字順序までカスタマイズできる
PostgreSQL 10からICU(International Components for Unicode)のロケール/コレーションがサポートされました。
これまでサポートされてきた、libcのja_JPロケールの貧弱な日本語ソート機能とは比べ物にならないくらい高機能な文字比較をサポートしています。日本語や他の言語での照合順序を柔軟に変更できます。
- マトモな日本語ソート順でソートする(かなり重要)
- 数字を後にソートする
- 大文字を先にソートする
- 仮名を先にソートする
- 自然ソートする
- これらをまとめて特別なソート順にする
といったことがPostgreSQL 10から行えます。