MySQL 在查询结果中记录行号

mysql-logo

在其他的关系型数据库中,都有rownum这类型的内置函数来提供查询结果的行号,但是MySQL没有,阿福也一直觉得奇怪。

虽然没有这玩意,但是需求还是要完成的,所以只能用其他的途径来实现了。

方法是通过预定义变量自增来实现:

set @myVar = 0 ;

select (@myVar := @myVar + 1) as rowNum ,otherColoum from table;

懂了么?otherColoum 就是其他的字段,table就是表明。其实熟悉MySQL语句的应该都能看懂。无非就是定义了一个用户变量来实现自增。

当然这个变量是永久变量还是临时变量就不晓得了。阿福在测试的时候发现,该变量接执行结果后还是保留的,却不知道数据库重启之后该变量是否保留。

未经允许不得转载:RffanLAB|Rffan实验室 » MySQL 在查询结果中记录行号

赞 (0)

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址