这个mysql语法做什么

这个mysql语法做什么,mysql,Mysql,选择@no:=0 上面的代码是做什么的 我在一个很长的查询中找到了它,如下所示: SELECT t1.a, t2.a, ....... FROM table t1, (SELECT @no:=0) t2 有什么想法吗?在下面的查询中,@no是MySQL的一个变量,通过使用:=0它被赋值0 选择@no:=0 说明: 用户定义变量(前缀为@): 您可以访问任何用户定义的变量,而无需声明或初始化它。如果引用的变量尚未初始化,则该变量的值为NULL,类型为字符串 SELECT @var_any_var

选择@no:=0

上面的代码是做什么的

我在一个很长的查询中找到了它,如下所示:

SELECT t1.a, t2.a, ....... FROM table t1, (SELECT @no:=0) t2

有什么想法吗?

在下面的查询中,@no是MySQL的一个变量,通过使用
:=0
它被赋值
0

选择@no:=0

说明:

用户定义变量(前缀为@):

您可以访问任何用户定义的变量,而无需声明或初始化它。如果引用的变量尚未初始化,则该变量的值为NULL,类型为字符串

SELECT @var_any_var_name
您可以使用SET或SELECT语句初始化变量:

SET @start = 1, @finish = 10;    

有关用户定义变量的更多信息,请访问以下链接:

中选择@no:=0
您正在定义一个值为0的变量

输出

a   @no
1   0
2   0
3   0
4   0
5   0
演示


它将@no与表t1交叉连接
@no
应该是一个表吗?什么是
:=0
?这是在MySQL中为变量赋值的一种方法。检查demo linkIs@no在查询中的任何位置使用?这就是我要寻找的答案。
CREATE TABLE Table1
    (`a` int)
;

INSERT INTO Table1
    (`a`)
VALUES
    (1),
    (2),
    (3),
    (4),
    (5)
;

SELECT t1.a, @no FROM table1 t1, 
(SELECT @no:=0) t2
a   @no
1   0
2   0
3   0
4   0
5   0