gpt4 book ai didi

sql - 在 MySQL 的 `IN ()` 中使用逗号分隔的字符串

转载 作者:行者123 更新时间:2023-11-29 01:33:28 26 4
gpt4 key购买 nike

如果用户定义的变量 @x 是一串以逗号分隔的数字,例如'1,2,4',有没有办法在 IN () 函数中使用它?

具体来说:

SET @x := '1,2,4';
SELECT * FROM t WHERE c IN (@x);

不选择 t 中 c 等于 1 或 2 或 4 的行。

最佳答案

您不能直接使用变量来执行此操作。根据您现在所拥有的,服务器正在尝试执行 select * form t where c in ('1,2,3'); ...这显然不是您想要的您正在检查 c 是否包含给定的单个字符串。

您必须根据列表生成动态 SQL 才能使其正常工作。

关于sql - 在 MySQL 的 `IN ()` 中使用逗号分隔的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4246615/

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