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

2018/03/23更新 カテゴリー:開発奮闘記 タグ: ,
  • このエントリーをはてなブックマークに追加

とあるサーバーでPostgreSQLを使っているのですが、サーバーを移行してから、日本語の並び替えがおかしくなってしまいました。今回はその解決方法についてです。

SPONSOR

ロケールが違う場合に起きる

PostgreSQLのロケールは言語と文字コードを指定するようですが、例えば日本語+UTF8で作っているにもかかわらず、移行したサーバーが日本語+EUC-JPだった場合、こんな時に並び替えが上手くいきません。

レンタルサーバーの場合、ロケールを変えるのはできないところが多いと思います。
そんな時は

ORDER BY convert_to(title,'UTF8');

のようにconvert_toを使うことで解決できました。

フリーランスエンジニアの稼ぎ方

  • このエントリーをはてなブックマークに追加
SPONSOR

PROFILE

プロフィール

入江 慎吾
自分が作ったサービスで生きていく。同じゴールを目指すサービス開発集団「入江開発室」を運営(現在約280名) / 個人間スキルシェアサービス「MENTA」は1ヶ月と10日で売上100万円を達成。1日で100社が利用した「JobTag」など多数開発
(詳しいプロフィール)

PRODUCT

イリテクで開発したプロダクト

RELATION

関連する記事

SPONSOR

TAG

タグから記事をさがす