在开发中,遇到SQL的需求是 要添加一个自增长的序号,(可以使用自增长ID,但是当前表中 自增长主键ID会会断(对表出现删除的情况)),所以就想到了下面的一个点。

思路是构建临时表, 然后进行需要去根据指定的数据去进行输出。

select t.*, (@indexs:= @indexs+1) index_no from (SELECT @indexs:=0) as indexs, (select 1 from dual ) t

(SELECT @indexs:=0) as indexs 

构建一个下标为0的临时序号表

(select 1 from dual ) t

查询结果表 -- 》 主查询逻辑

select t.*, (@indexs:= @indexs+1) index_no

查询结果数据,加上上一个临时表用的构建需要每一条 +1

 上面的图看不出什么效果,那么我们换一个, 从下图中是不是很直观的能看出来呢?

 

有什么问题欢迎各位在下方留言哦!!!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐