从csv字符串获取id的行

时间:2012-08-24 00:01:51

标签: mysql csv syntax

我正在尝试通过搜索ID来获取我的表中的所有行(ID是自动递增的)。

我正在尝试这样的事情:

SELECT * 
FROM table 
WHERE something = 'yes' AND (csvstring)

其中csvstring是这样的:4,53,34,23

问题在于我认为你不能这样做。 我试过“WHERE id IN(csvstring)”,因为我在谷歌上搜索但是没有用

任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:1)

SELECT *
FROM table
WHERE something='yes' AND id IN (4,53,34,23)

这不起作用?编辑:刚试过它,它确实有效。

答案 1 :(得分:0)

id IN (csvstring)中的原因是因为查询将csvstring解析为整个字符串而不是特定的ID。您希望这样:id IN (4, 53, 34, 23),但查询会将其视为此id IN ('4, 53, 34, 23')

也许 FIND_IN_SET 适合您。

尝试一下这个,

SELECT... FROM... WHERE something='yes' AND id IN (4,53,34,23)
相关问题