首页 > 数据库技术 > 详细

Mysql对查询结果添加序列号

时间:2018-04-25 10:06:33      阅读:217      评论:0      收藏:0      [点我收藏+]
 set @rownum=0;      
 select  @rownum:=@rownum+1 as rownum,* from table1
:=和=的区别?
  1. "=",只有在set和update时才和:=一样,赋值的作用,其它都是等于的作用。鉴于此,用变量实现行号时,必须用:=
  2. ":=",不只在set和update时时赋值的作用,在select也是赋值的作用。

如果明白了=和:=的区别,那么也就理解了下边的现象。 

@num:=@num+1,:=是赋值的作用,所以,先执行@num+1,然后再赋值给@num,所以能正确实现行号的作用。

@num=@num+1,此时=是等于的作用,@num不等于@num+1,所以始终返回0,如果改为@num=@num,始终返回1了。mysql数据库中,用1表示真,0表示假。 

 

Mysql对查询结果添加序列号

原文:https://www.cnblogs.com/llljpf/p/8940059.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!