有没有办法在Mysql中获取行号,就像在oracle中的rownum一样

时间:2011-12-14 18:47:01

标签: mysql sql oracle

有没有办法让mysql中的行号像oracle中的rownum一样,如果没有,那么有没有间接的方法呢? 请建议。

2 个答案:

答案 0 :(得分:29)

在MySQL最终支持modern SQL之前,获得类似内容的唯一方法是:

SELECT @rownum:=@rownum + 1 as row_number, 
       t.*
FROM ( 
   < your original query goes here >
) t,
(SELECT @rownum := 0) r

答案 1 :(得分:-5)

最佳做法是为每行添加自动递增ID 。如果有一天你选择使用关系表,这对你也会有很大的帮助。

在phpMyAdmin中,当您创建(或编辑)表格时,您将看到AUTO_INCREMENT选项。您只能拥有一个启用了自动ID的列。

编辑:这就是数据库的样子:

id | name  | email | phone
1    Tekin   ...     ...
2    John    ...     ...
3    Jane    ...     ...