首页 > 解决方案 > MySQL - 如何在 SELECT 语句中设置局部变量

问题描述

我想知道如何在 SELECT 语句中更新局部变量。有许多使用“用户”变量的版本 - 但不推荐使用这些版本。

例如,这就是我现在所拥有的 - 输出始终为零。我知道等号是对赋值运算符的相等检查。但是,如果我尝试添加“:=”,则会出现语法错误。

DECLARE v_row_num INT;
SET v_row_num = 0;

SELECT (v_row_num = v_row_num + 1) AS player_rank
--theres more to this query FYI

旧方法(使用用户变量)很简单:

SET @v_row_num = 0;

SELECT (@v_row_num := @v_row_num + 1) AS player_rank
--theres more to this query FYI

“局部”变量有类似的东西吗?

标签: mysql

解决方案


推荐阅读