English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

MySQLでvarcharフィールドを数値でソートする方法

'LPAD(lower(column_name))'はMySQLでvarcharフィールドの数値並び替えに使用されます。例をみてみましょう。

まず、テーブルを作成します。CREATEコマンドはテーブルを作成するために使用されます。

mysql> create table SortingvarcharDemo
   -> (
   -> リスト(List) varchar(10)
   -> ;

レコードはINSERTコマンドの助けにより挿入されます。

mysql> insert into SortingvarcharDemo values("99;
mysql> insert into SortingvarcharDemo values("9;
mysql> insert into SortingvarcharDemo values("199;
mysql> insert into SortingvarcharDemo values("1;
mysql> insert into SortingvarcharDemo values("999;
mysql> insert into SortingvarcharDemo values("78;

レコードを表示するには、selectコマンドを使用してください。

mysql> select *from SortingvarcharDemo;

これは出力です。

+------+
| リスト(List)
+------+
| 99   |
| 9    |
| 199  |
| 1    |
| 999  |
| 78   |
+------+
6 セット内の行(rows) (0.05 sec)

上の出力では、リストは無序です-それは昇順でも降順でもありません。

並び替えを昇順または降順にするには、以下の構文を使用してください。

SELECT * FROM yourTableName ORDER BY LPAD(lower(Column_name), value1,values2) 昇順;

以下はクエリです。

mysql> SELECT * FROM SortingvarcharDemo ORDER BY LPAD(lower(List), 6,0) 昇順;

これは出力です。

+------+
| リスト(List)
+------+
| 1    |
| 9    |
| 78   |
| 99   |
| 199  |
| 999  |
+------+
6 セット内の行(rows) (0.17 sec)

その上、結果は昇順に並べ替えられます。

おすすめ