gpt4 book ai didi

php - Mysql - Where IN 子句未正确选择数据

转载 作者:行者123 更新时间:2023-11-29 03:34:05 26 4
gpt4 key购买 nike

我有逗号分隔的字符串和单引号

  1. select * from demoProject WHERE id IN(1,2,3);

  2. 设置@ids := "'1,2,3'";从 demoProject 中选择 * WHERE id IN(@ids)

第一个查询工作正常,但第二个查询仅获取关联 ID 为“1”的数据。第二个查询哪里错了?

最佳答案

这里的问题是您在 IN 语句中插入了一个 STRING,因此您得到了条件:id IN('1,2,3')。在这种情况下,您应该使用动态 sql。

同样在 MySQL 中你可以使用 FIND_IN_SET()在逗号分隔的字符串中查找数字的函数。所以它可以在这里提供帮助:

set @ids := "'1,2,3'"; select * from  demoProject WHERE FIND_IN_SET(id,@ids);

关于php - Mysql - Where IN 子句未正确选择数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25971777/

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