一个表GROUP_CONCAT和多个AND与FIND_IN_SET

时间:2015-11-10 09:54:02

标签: mysql

我想检索具有我想要的所有值的项目。

表格:

+------+------+
| item |  val |
+------+------+
|   1  |  x   |
|   1  |  y   |
|   2  |  a   |
|   2  |  b   |
|   3  |  a   |
|   3  |  x   |
|   3  |  y   |
+------+------+

例如,我想要具有x和y值的项目(项目1和3)

我的SQL查询:

SELECT item, GROUP_CONCAT(DISTINCT val) AS vals
FROM test
GROUP BY item 
HAVING
    FIND_IN_SET('x', vals) AND
    FIND_IN_SET('y', vals)

这有效,但我认为有一个更好的解决方案,它不使用FIND_IN_SET函数。

0 个答案:

没有答案