执行以下查询:
SELECT COUNT(1)
FROM tableA
INNER JOIN tableB
ON tableA.ID = tableB.pid
WHERE tableA.foo IN ('1234')
AND tableB.bar = 555
上面的查询返回1个结果。
现在,由于我存储的数据的性质(逗号分隔字符串[ie:jkdjif,3-i-d,343]),我尝试用以下内容替换上面的in(),以便用引号将数据括起来:
WHERE tableA.foo IN (CONCAT("'",REPLACE('1234',",","','"),"'"))
但是,这将返回0个结果。
它看起来与in()中的concat()有关,因为我已经将它简化为 IN (CONCAT("'",643290,"'"))
为什么会这样?我哪里出错了?
1条答案
按热度按时间fzsnzjdm1#
你可以用
FIND_IN_SET
取而代之的是: