在mysql中,當我們所要查詢的結果集沒有id欄位時,為方便前台展示等業務需求,需要新增乙個自增的序號字段(id)。語法如下:
select (@i:=@i+1) 別名1,表字段資訊 from 表名, (select @i:=0) as 別名2
**示例,同時結合分頁使用
寫法1
set @i:=0;
select (@i:=@i+1) as rownum, a.* from t_prize_log a order by a.ese_id desc limit 0, 10;
寫法2select (@i:=@i+1) as rownum, a.* from t_prize_log a,(select @i:=0) b order by a.ese_id desc limit 0, 10;
區別:寫法1多次執行,id會自動增加,
寫法2多次執行,id不會增加
補充:
如果是在mybatis中使用上述查詢時,變數i的的初始值0,可以使用傳參的方式(¥{})進行設定。Mysql 給查詢出的結果集新增自增序號
模板如下 select rownum rownum 1 自增序號別名,結果集欄位 from 結果集,select rownum 0 as 任意別名示例如下 select rownum rownum 1 as rownum,a.from select u.from users u order by u...
Mysql對查詢結果新增序列號
set rownum 0 select rownum rownum 1 as rownum,from table1 和 的區別?只有在set和update時才和 一樣,賦值的作用,其它都是等於的作用。鑑於此,用變數實現行號時,必須用 不只在set和update時時賦值的作用,在select也是賦值的...
MySQL查詢結果新增值固定列和自增列
測試資料準備 select 固定值 as 列名 from 示例 select 男 as from student 此時 變為字串型別 varchar mysql自動識別型別 select 1 as from student 此時 為int型別 寫法一 set rownum 0 select rown...