页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。


目录

我们在执行 SQL 语句时,有时候会希望在返回的结果集中增加一列,其值为每一行的顺序号。比如 Oracle 数据库,就提供了 rownum 伪列,可以实现这样的效果。在 MySQL 数据库上,我们该如何实现该效果,显示每一条记录的行号呢。
其实 MySQL 查询结果条数编号的方法并不复杂,下面就以实例的形式为您介绍 MySQL 查询结果条数编号实现过程,我们先来了解一下 MySQL 查询结果条数编号的语句写法:

代码块
languagesql
SELECT 
@row := @row + 1 as row, 
t.* 
FROM some_table t, (SELECT @row := 0) r

...


定义一个变量@row,初始值为零,利用它与待查询的表关联,通过迭代加1,计算出每一条记录编号。下面以一张表查询结果为例,看下实际效果。

代码块
languagesql
SELECT
@row := @row + 1 as 行号,
zdt.*
FROM zdt, (SELECT @row := 0) t
WHERE @row < 8 

Image Modified

...

...