MySql小点心—1、赋值操作符"="与":="
SELECT @x := IFNULL(@x, 0) + 1 AS 'index', rcv.nodeIp, rcv.target, rcv.rcvTime, rcv.failreason, rcv.beginTime, rcv.endTime, rcv.progress, rcv.usedTime, bizcode.codeValueMean AS taskStatus FROM scanner_resultreceive rcv, scanner_bizcode bizcode, (SELECT @x := 0) r WHERE bizcode.fieldCode = 'taskStatus' AND rcv.taskStatus = bizcode.codeValue rcv.resultID = #resultId# rcv.resultID IS NULL rcv.resultID IS NULL SELECT @x := IFNULL(@x, 0) + 1 AS 'index',rt.taskStatus FROM scanner_taskresult rt , (SELECT @x := 0) r SELECT @x , @ww FROM (SELECT @x := 0,@ww:=3) r
上边是例子
http://www.2cto.com/database/201208/149469.html
赋值 + index序号处理
对于刚接触到mysql的程序员来说,会对这两个符号有疑问,因为会发现有的代码里用这个有的用另一个。
当然他们是有区别的。他们的区别也比较简单:
“:=” 是真正意义上的赋值操作,左边的变量设置为右边的值。
www.2cto.com
"=" 则只在两种情况下作为赋值用,第一种就是在SET语句里面,SET var = value;
另一种是在UPDATE语句里面的那个SET,如update table_name set column_name where....。
除了方面这两种情况外"="则作为比较操作符使用。
另一种是在UPDATE语句里面的那个SET,如update table_name set column_name where....。
除了方面这两种情况外"="则作为比较操作符使用。