51工具盒子

依楼听风雨
笑看云卷云舒,淡观潮起潮落

mysql用户变量 mysql用户自定义变量 @:=

mysql用户自定义变量:可以先在用户变量中保存值然后在以后引用它;这样可以将值从一个语句传递到另一个语句。用户变量与连接有关。也就是说,一个客户端定义的变量不能被其它客户端看到或使用。当客户端退出时,该客户端连接的所有变量将自动释放。

用户变量的形式为@var_name,其中变量名var_name可以由当前字符集的文字数字字符、'.'、'_'和'$'组成。 默认字符集是cp1252 (Latin1)。可以用mysqld的--default-character-set选项更改字符集。用户变量名对大小写不敏感。

设置用户变量的一个途径是执行SET语句:

SET @var_name = expr [, @var_name = expr] ...

对于SET,可以使用=或:=作为分配符。分配给每个变量的expr可以为整数、实数、字符串或者NULL值。 也可以用语句代替SET来为用户变量分配一个值。在这种情况下,分配符必须为:=而不能用=,因为在非SET语句中=被视为一个比较 操作符:

Demo One:对查出的结果数据自定义加一列序号

SET @sNum=0;  
    SELECT record,projectName,@sNum:=@sNum+1 as serialNo FROM recordtable WHERE datetime='20170210'

Demo Two:对查出的结果数据自定义加一个新列

SELECT record,projectName,@temp:=12 as area FROM recordtable WHERE datetime='20170210'
赞(5)
未经允许不得转载:工具盒子 » mysql用户变量 mysql用户自定义变量 @:=