MySQLの「文字列」型を「数値」としてソート
2023/03/01
2023年度開発小技シリーズ 第1弾
今回は、MySQLの「文字列」型を「数値」としてソートについてご紹介します!
数値をvarchar型で格納している場合、普通にORDER BYでソートすると、以下のような意図しない順序になることがあります。
number-------------
1
10
2
20
...
これは数値の順番ではないなぁ。。。
これを「ORDER BY (number + 0)」でソートしてやると、数値としてソートされます。
number-------------
1
2
10
20
...
これは数値の順番ですね。
数値をvarchar型でORDER BYする時。数値が“文字”と認識されます。最初の一位目の“文字”から並べます。
(number + 0)を使って、数値と認識されます。順番で並べます。
これでORDER BYする時文字列の数値を順番で並べることができます!
担当者:サイ