如何使用php对sql表中的数值数据进行排序

时间:2017-03-01 05:40:28

标签: php mysql sql sql-order-by

我的数据有 5000行,有40列。我想根据行中的第一列对数据进行排序,其中包含特定行的 id 值。 id 列中的值类似于1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,.....100,101,102.....1000,1001..... 当我使用带有子句ORDER by id ASC的SQL语句时。

数据以这种方式排序..1,10,100,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,101.102,103,........

但我希望数据按升序排列,如:1,2,3,4,5,6,7,8,9,10,11,12,13.....

这是声明: $result = mysql_query("SELECT * FROM masterdb ORDER BY id ASC");

1 个答案:

答案 0 :(得分:2)

如果您希望经常按数字排序,可能需要考虑将id列设为数字类型。话虽如此,一种解决方法是将id列转换为数字类型,然后使用它进行排序:

SELECT *
FROM masterdb
ORDER BY CAST(id AS UNSIGNED)