我们正在使用PostgreSQL v8.2.3。
如何在查询输出中生成序列号?我想显示查询返回的每一行的序列号。
示例:SELECT employeeid, name FROM employee
我希望从一行开始生成并显示序列号。
答案 0 :(得分:17)
您有两种选择。
升级到PostgreSQL v8.4并使用row_number()
功能:
SELECT row_number() over (ORDER BY something) as num_by_something, *
FROM table
ORDER BY something;
或按照Simulating Row Number in PostgreSQL Pre 8.4中的说明跳过一些箍。
答案 1 :(得分:4)
SELECT row_number() over (order by employeeid) as serial_number, employeeid, name FROM employee
如果要根据名称的排序分配数字,请在over
子句中更改顺序