mysql查詢行號

2021-09-24 16:54:25 字數 1195 閱讀 7417

mysql查詢結果集中顯示行號的方法。

建立user表

create

table

`user`(

`name`

varchar(12

)default

null

)engine

=innodb

default

charset

=utf8;

插入若干條資料

insert

into

`test`.`

user`(

`name`

)values

('張三');

insert

into

`test`.`

user`(

`name`

)values

('李四');

insert

into

`test`.`

user`(

`name`

)values

('王五'

);

使用變數賦值方式

select

@row_num:=

@row_num+1

as row_num

,user.*

from

user,(

select

@row_num:=

0) t;

使用笛卡爾積,但這種方法只適合 name 列的每一行資料都唯一

select

sum(

case

when

(u1.name >= u2.name)

then

1else

0end

)as row_num

,u1.name

from

user u1 ,

(select

*from

user

) u2

group

by u1.name

以上兩種方式的查詢結果如下圖所示

MySQL查詢顯示行號

oracle中有專門的rownum 顯示行號的函式,而mysql沒有專門的顯示行號函式,但可以通過用 rownum自定義變數顯示行號。主要 rownum rownum 1 rownum select rownum 0 as rn例 如果按照某個字段排序,行號會不規則排列,換成先排序,外層加上行號 s...

MySql 查詢 生產序列號

mysql 如何實現 oracle 的 rownum mysql select from frutas nombre color fresa rojo platano amarillo manzana verde uva verde pera verde mandarina naranja melo...

使用mysql查詢顯示行號

在oracle獲取記錄行號使用rownum獲取。但是在mysql中查詢顯示行號就沒這麼方面了 方法如下 select rowno rowno 1 as rowno,r.from t article r,select rowno 0 t定義乙個變數 rowno,讓它的初始值為0,每有一行,數值加1。然...