我的数据有 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 子句的 SQL 语句时 ORDER by id ASC
。
数据以这种方式排序..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");
最佳答案
如果您希望经常按数字排序,您可能需要考虑将您的 id
列设为数字类型。话虽这么说,一种解决方法是将 id
列转换为数字类型,然后使用它进行排序:
SELECT *
FROM masterdb
ORDER BY CAST(id AS UNSIGNED)
关于php - 如何使用php对sql表中的数字数据进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42524044/