我正在运行一个查询,您可以在其中搜索数组值。我找到了如何在 Stackoverflow 上执行此操作的解决方案,但是,它似乎没有给出我期望的输出。以下是示例,请您告诉我哪里出错了:
我有一个表,其中有一列称为部门,并且一些示例行包含以下值:
1: 2,4
2: 1,7,2,8,9,4
3: 4, 2
我对此进行了查询:
SELECT * FROM udf_multi_value WHERE udfdefid = '1' AND department IN ( 1, 7, 2, 8, 9, 4 );
这将返回结果中的所有行,这是我所期望的。但是,当我运行时:
SELECT * FROM udf_multi_value WHERE udfdefid = '1' AND department IN ( 2, 4 )
它只返回第 1 行和第 3 行。由于第 2 行和第 4 行在所有行中,我认为它也应该返回第 2 行。
非常感谢任何帮助。