'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 in set (0.05 sec)
在上面的输出中,列表是无序的-它既不是升序也不是降序。
要按升序或降序对其进行数字排序,请使用以下语法。
SELECT * FROM yourTableName ORDER BY LPAD(lower(Column_name), value1,values2) asc;
以下是查询。
mysql> SELECT * FROM SortingvarcharDemo ORDER BY LPAD(lower(List), 6,0) asc;
这是输出。
+------+ | List | +------+ | 1 | | 9 | | 78 | | 99 | | 199 | | 999 | +------+ 6 rows in set (0.17 sec)
在上面,结果按升序排序。