mysql - 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
“局部”变量有类似的东西吗?
解决方案
推荐阅读
- javascript - 如何获取复选框是否被选中
- spring-mvc - javax.servlet.jsp.JspTagException:Bean 名称“用户”的 BindingResult 和普通目标对象都不能用作请求属性
- javascript - 为什么“渲染”不会用更新的状态重新渲染 UI?
- java - 如何找到涉及对数和求和规则的嵌套 for 循环的时间复杂度?
- r - 有没有办法解决make rstan的错误
- javascript - 在 Google 表格中按状态自动发送电子邮件
- firebase - 如何获取作为 Future 的 Firestore.instance.collection()
? - pytest - PyTest-BDD : 支持没有场景大纲的数据表
- javascript - 是否可以使用 Web NFC API 对 NFC 标签进行写保护?
- android - 如何以编程方式将英文文本翻译成日文文本?