gpt4 book ai didi

MySQL - CONCAT - 有什么方法可以连接字符串并将其用作变量吗?

转载 作者:行者123 更新时间:2023-11-30 21:37:37 26 4
gpt4 key购买 nike

mysql 上的时间很短,但开始探索边缘。 Stackoverflow 是一个很好的资源 - 谢谢大家。

使用 Concat 进行试验时,我遇到了这个问题。我知道会有办法,但我就是想不通。

我的例子:

set @strokes_hole_10 = 6;
set @x = 10;
set @strokes = concat('strokes_hole_',@x);
select @strokes;

我在寻找@strokes 是变量值 6 而不是变量值“strokes_hole_10”。

我找到了很多关于使用 concat 的信息,大部分都是直接的示例,而且我知道 concat 会产生一个字符串。我只是不知道如何使动态标签起作用。

我是否将准备好的陈述视为继续进行的方式?

在此先感谢您的帮助。

最佳答案

如果您有可变列名称,则需要使用 Dynamic SQL :

set @strokes_hole_10 = 6;
set @x = 10;
set @strokes = concat('@strokes_hole_',@x); -- add @ to variable string

-- generate the query string
set @query_str = CONCAT('SELECT ', @strokes);

-- prepare statement using the query string
Prepare stmt From @query_str;

-- executes the prepared statement
Execute stmt;

-- clean up after execution
Deallocate Prepare stmt;

结果

| @strokes_hole_10 |
| ---------------- |
| 6 |

View on DB Fiddle

关于MySQL - CONCAT - 有什么方法可以连接字符串并将其用作变量吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53147889/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com