SQLで大文字小文字、半角全角、ひらがなカタカナなどが混在した文字列を並び替えたり、比較したりするとき、思ったとおりに動作してくれなくて困ることがあります。 これは比較や並べ替えのルールがRDBMSや設定によって様々で、そのルールが自分の望むものではないというときにしばしば出くわす問題です。 そこで、実際にOracle、SQL Serverそれぞれで大文字小文字、全角半角、ひらがなカタカナがどのように並べ替えられるかを見てみます。 また、並べ替えのルールを変更する方法についても見てみます。 Oracle Oracleでは文字列の比較や並べ替えはコード順で行います。 そのため、大文字小文字、全角半角、ひらがなカタカナが混在したような列の場合、不自然な並び順となることがあります。 SELECT COLUMN1 FROM TABLE1 ORDER BY COLUMN1 COLUMN1 -----