mysql中“=”和“:=”的区别

举报
yd_226342373 发表于 2021/05/20 23:55:28 2021/05/20
【摘要】 1、“=”和“:=”的区别 mysql中“=”大多数表示的是等于的作用。只有使用update …set语句修改表中数据的时候,才体现的是赋值作用。eg:update student set sname=“王八” where sid = 3;“:=”表示的是赋值操作。 2、举例说明“=”和“:=”的作用 1)@num=@num+1 上图说明:   首先,第1行我...

1、“=”和“:=”的区别

  • mysql中“=”大多数表示的是等于的作用。只有使用update …set语句修改表中数据的时候,才体现的是赋值作用。
  • eg:update student set sname=“王八” where sid = 3;
  • “:=”表示的是赋值操作。

2、举例说明“=”和“:=”的作用

1)@num=@num+1

在这里插入图片描述
上图说明:
  首先,第1行我们使用set @num=0;声明了一个用户变量,也就是你们在其它编程语言中常说的声明并初始化了一个变量,只不过不同编程语言的语法不同而已,你习惯了就好。记住,用户变量在当前窗口中的任何一个地方都可以使用。
  接着,我们写了一个sql语句,在select后面我们写了@num=@num+1这样一句话,这句话表示的是等于的意思。当select每取出一行数据的时候,这里就会判断一次@num是否等于@num+1,很明显不等于呀!因此,每取出一条数据,显示的都是0(在mysql中false显示的是0)。

2)@num:=@num+1

在这里插入图片描述
上图说明:
  首先,第1行我们仍然是使用set @num=0;声明了一个用户变量。
  接着,我们写了一个sql语句,在select后面我们写了@num:=@num+1这样一句话,这句话表示的是赋值的意思。当select取出第一行数据的时候,就会将@num+1赋值给左边的@num,由于@num原始值等于0,因此“:=”左边的@num变为了1。当select取出第二行数据的时候,又会将@num+1赋值给左边的@num,由于此时@num等于1,经过赋值以后,“:=”左边的@num就变为了2,这样依次进行下去。

文章来源: blog.csdn.net,作者:数据分析与统计学之美,版权归原作者所有,如需转载,请联系作者。

原文链接:blog.csdn.net/weixin_41261833/article/details/103509526

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。