在Mysql查询结束时添加项ID

时间:2012-12-14 13:58:34

标签: php mysql sql

我有一个复杂的MYSQL查询,我从多个数据源运行,可以根据请求进行排序(因此记录ID没有多大帮助)。

我想在每次运行查询时在数据完成时添加唯一的ID列,这样我就可以启用数据的分页功能。

如果我在数据库级别这样做,我可以使用id INTEGER AUTO_INCREMENT,但这是关于每次运行查询时动态添加。

1 个答案:

答案 0 :(得分:4)

你可以这样做:

SELECT
  *, (@rownum := @rownum + 1) rank
FROM YourcomplexQuery, (SELECT @rownum := 0) t;

但是,您可以使用MySQL内置函数LIMIT

SELECT --
FROM Yourtable
ORDER BY SomeField
LIMIt 0, n;