[解決済み] SQLオーダー文字列を数値で表示
2022-04-22 10:47:58
質問
として保存された数字があります。
VARCHAR
をMySQLのデータベースに保存しています。私はそれらを
INT
その他諸々の事情により
ソート時に数値ではなく文字として扱われる。
データベースには
1 2 3 4 5 6 7 8 9 10...
私のページでは、このような順序付きリストが表示されます。
1 10 2 3 4 5 6 7 8 9
数値の昇順で表示させるには?
どのように解決するのですか?
可能であれば、とにかく数字しか格納しないのであれば、カラムのデータ型を数字に変更する必要があります。
それができない場合は、カラムの値を
integer
明示的に
で
select col from yourtable
order by cast(col as unsigned)
または 暗黙のうちに 例えば、数値への変換を強制するような数学的操作の場合。
select col from yourtable
order by col + 0
ところで、MySQL は文字列を左から右へ変換します。例
string value | integer value after conversion
--------------+--------------------------------
'1' | 1
'ABC' | 0 /* the string does not contain a number, so the result is 0 */
'123miles' | 123
'$123' | 0 /* the left side of the string does not start with a number */
関連
-
Unknown character set.を解決する。MySQLデータベースインポート時の'utf8mb4'エラーの解消
-
[解決済み] JavaScriptで文字列が部分文字列を含むかどうかを確認する方法は?
-
[解決済み] C#のStringとstringの違いは何ですか?
-
[解決済み] JavaでInputStreamを読み込んでStringに変換するにはどうすればよいですか?
-
[解決済み] SQL ServerでSELECTからUPDATEする方法とは?
-
[解決済み] なぜパスワードにはStringではなくchar[]が好まれるのですか?
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] バイトを文字列に変換する
-
[解決済み】JavaScriptで文字列の出現箇所をすべて置換する方法
-
[解決済み】大文字・小文字を区別しない「Contains(string)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
SQL集計、グループ化、ソート
-
MySQLのselect、distinct、limitの使い方
-
mysqlインデックスが長すぎる特殊なキーが長すぎる解決策
-
Mysqlのソート機能の詳細
-
[解決済み】SQLサーバーのテンポラリーテーブルで「すでに名前のついたオブジェクトがあります」エラーが発生する。
-
MySQLの一般的な分割ライブラリおよび分割テーブルスキームの概要
-
Mysql がエラーを報告 オペランドには 1 つのカラムが含まれている必要があります。
-
[解決済み] 1つのSQLクエリで複数のカウントを取得する方法は?
-
[解決済み] Mysqlでidを使用してテーブルから多くの行を削除する
-
[解決済み] MySQL で特定のカラム名を持つすべてのテーブルを見つけるにはどうすればよいですか?