【发布时间】:2018-11-10 16:25:26
【问题描述】:
+-------------+----------+-----------+
| animal_name | tag_name | tag_group |
+-------------+----------+-----------+
| CatBlue | cat | species |
| CatBlue | blue | colour |
| DogBlue | dog | species |
| DogBlue | blue | colour |
| DogRed | dog | species |
| DogRed | red | colour |
+-------------+----------+-----------+
上面的表格是各种连接表格的简化视图。
它是根据所选标签返回结果的系统的一部分。问题是如果选择了 blue 和 cat 标签,系统当前也会返回 DogBlue。 (在 SQL 中使用 OR)
在 MySQL 中,如何仅搜索所有标签组中具有一个或多个标签的动物?是否可以在查询中使用 tag_group 列值?
编辑: 我希望能够请求动物具有颜色 blue 和物种 cat 的表格行。 WHERE tag_name = cat OR tag_name = blue 也会带出狗。
【问题讨论】:
-
以格式化数据而非图像的形式提供带有示例数据的表结构。并以格式化文本的形式提供预期的输出。
标签: mysql