可能重复:
MySql Row Number?
我想对查询的结果进行编号。我可以用mysql做到吗?
假设我有以下查询
SELECT id
, application_id
, 3rd_column_to_generate From SemesterApplication
WHERE SemesterApplication.semester.id = 1
ORDER BY SemesterApplication.modified
我需要查询返回第3列,该列将保存结果的编号。如果查询返回20个结果,则第3列将返回1到20之间的值。
此查询将用作另一个查询中的子查询。
答案 0 :(得分:0)
在mysql中执行此操作并不是很好的方法。普遍的黑客攻击是创建一个变量并增加它。所以:
SELECT @rownum:=@rownum+1 rownum,
id,
application_id,
3rd_column_to_generate
From SemesterApplication,
(select @rownum:=0) r
WHERE SemesterApplication.semester.id = 1
ORDER BY SemesterApplication.modified