PHP MySQL设置变量并立即获取select

PHP MySQL设置变量并立即获取select,php,mysql,Php,Mysql,我在我的查询中定义了一个变量,该变量在select after中被修改和使用 SET @myvar=0; SELECT (@myvar:=@myvar+1) AS number ,username FROM mytable; 但是当我在php中尝试查询函数时,它不会运行,因为它不是一个命令,我如何执行它?您可以重写这两个查询 SET @myvar = 0; SELECT (@myvar := @myvar + 1) AS number, username FROM

我在我的查询中定义了一个变量,该变量在select after中被修改和使用

SET @myvar=0;   
SELECT (@myvar:=@myvar+1) AS number ,username FROM mytable;

但是当我在php中尝试查询函数时,它不会运行,因为它不是一个命令,我如何执行它?

您可以重写这两个查询

SET @myvar = 0;   

SELECT
    (@myvar := @myvar + 1) AS number, username
FROM 
    mytable;
变成一个查询

SELECT
    (@myvar := @myvar + 1) AS number, username
FROM 
    mytable
CROSS JOIN
    (SELECT @myvar := 0) AS init_user_param 

您可以重写这两个查询

SET @myvar = 0;   

SELECT
    (@myvar := @myvar + 1) AS number, username
FROM 
    mytable;
变成一个查询

SELECT
    (@myvar := @myvar + 1) AS number, username
FROM 
    mytable
CROSS JOIN
    (SELECT @myvar := 0) AS init_user_param 

只运行两个独立的查询?您使用的是什么驱动程序?为什么不把变量存储在PHP中呢?我正在使用一个临时变量并初始化它,有可能这样做吗?在scound查询中可以使用吗?我不知道你在做什么,所以很难说。不过,只需将变量增加1就可以在PHP或SQL中完成。你能告诉我你使用的驱动程序和最终目标是什么吗?@chris85因为我在一个复杂的情况下使用这个变量,它必须在查询中。这段代码只是一个简单的例子来说明我的问题。只需运行两个单独的查询。你使用的驱动程序是什么?为什么不把变量存储在PHP中呢?我正在使用一个临时变量并初始化它,有可能这样做吗?在scound查询中可以使用吗?我不知道你在做什么,所以很难说。不过,只需将变量增加1就可以在PHP或SQL中完成。你能告诉我你正在使用的驱动程序和最终目标是什么吗?@chris85因为我在复杂的情况下使用变量,它必须在查询中。这段代码只是一个简单的例子来说明我的问题