gpt4 book ai didi

mysql - 使用要在查询中使用的字符串调用存储过程

转载 作者:行者123 更新时间:2023-11-29 06:34:56 25 4
gpt4 key购买 nike

我有一个存储过程,我需要在其中传递一个字符串以在查询中使用。

存储过程示例:

BEGIN
SET @query = query;
SELECT * FROM test WHERE @query
END

我想如何用字符串调用它:

CALL proceduretet('activity_id = 1 OR activity_id = 2')

每次查询可以不同,有时会有1个activity_id,有时有4个或更多。

我试图将它作为 varchar 和文本传递,但它不起作用。

那么有没有办法将字符串传递给存储过程并在查询中使用它呢?

问候,安德烈亚斯

最佳答案

代码如下:

BEGIN
SET @query = query;
SET @sql = concat('SELECT * FROM TEST WHERE ', @query);
PREPARE stmt from @sql;
EXECUTE stmt;
END;

关于mysql - 使用要在查询中使用的字符串调用存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25504674/

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