如果我们要想在查询中显示MySQL表的行号,这里我们需要借助在查询语句中定义一个变量。因为MySQL没有专门的显示行号的函数,这一点不像Oracle中的rownum
先来看一个MySQL数据库的表截图,这个截图是没有行号的显示效果
下面为了显示行号的SQL
SELECT (@rownum:=@rownum+1) rownum, a.imgPath FROM tb_goods_img a,(SELECT (@rownum:=0)) b
有行号的截图如下
技术提升:我们一起来思考一个问题,虽然上面的SQL语句实现了行号的显示,但是想问问现在如果只想显示某一个行号所对应的数据,SQL怎么写
SELECT * FROM (SELECT (@rownum:=@rownum+1) rownum, a.imgPath FROM tb_goods_img a,(SELECT (@rownum:=0)) b) c WHERE c.rownum = 5