PostgreSQLで日本語での並び替えがうまくいかない場合の対処法

とあるサーバーでPostgreSQLを使っているのですが、サーバーを移行してから、日本語の並び替えがおかしくなってしまいました。今回はその解決方法についてです。
ロケールが違う場合に起きる
PostgreSQLのロケールは言語と文字コードを指定するようですが、例えば日本語+UTF8で作っているにもかかわらず、移行したサーバーが日本語+EUC-JPだった場合、こんな時に並び替えが上手くいきません。
レンタルサーバーの場合、ロケールを変えるのはできないところが多いと思います。
そんな時は
ORDER BY convert_to(title,'UTF8');
のようにconvert_toを使うことで解決できました。
[sc name=”engeneer”]
SHARE
無料メルマガ
「好きなことで生きていく」をコンセプトに、ブログの新着コラムをお届けします。
無料メルマガ登録はこちら
PROFILE

入江 慎吾
あらゆるスキルが学べるパーソナルメンターサービスMENTAの代表/個人開発が好きでこれまでに30個ほどのWEBサービスやアプリを作ってきました/福岡のWEB制作会社勤務→フリーランスエンジニア→法人立ち上げ→M&A億単位の売却を経験。 (詳しいプロフィール)
あらゆるスキルが学べるパーソナルメンターサービスMENTAの代表/個人開発が好きでこれまでに30個ほどのWEBサービスやアプリを作ってきました/福岡のWEB制作会社勤務→フリーランスエンジニア→法人立ち上げ→M&A億単位の売却を経験。 (詳しいプロフィール)