我有一个复杂的 MYSQL 查询,它从多个数据源运行,可以根据请求进行排序(因此记录 ID 没有多大帮助)。
我想在每次运行查询时在数据完成时添加一个唯一的 ID 列,这样我就可以启用数据的分页功能。
如果我在数据库级别执行此操作,我可以使用 id INTEGER AUTO_INCREMENT
,但这是关于在每次运行查询时即时添加。
最佳答案
你可以这样做:
SELECT
*, (@rownum := @rownum + 1) rank
FROM YourcomplexQuery, (SELECT @rownum := 0) t;
但是,您可以使用 MySQL 内置函数 LIMIT
:
SELECT --
FROM Yourtable
ORDER BY SomeField
LIMIt 0, n;
关于php - 在 Mysql 查询末尾添加项目 ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13880077/