我有一个数据库(出于此示例的目的),它有两个具有多对多关联的表(带有一个用于保存关联的中间表)。这里有结构:
表 A:
+-----+-------+-------+-------+
| aID | aCol1 | aCol2 | aCol3 |
+-----+-------+-------+-------+
| 1 | foo | aoo | doo |
+-----+-------+-------+-------+
| 2 | bar | aar | dar |
+-----+-------+-------+-------+
| 3 | baz | aaz | daz |
+-----+-------+-------+-------+
表 B:
+-----+-------+
| bID | bCol1 |
+-----+-------+
| 1 | alice |
+-----+-------+
| 2 | bob |
+-----+-------+
关联表:
+-----+-----+
| aID | bID |
+-----+-----+
| 1 | 1 |
+-----+-----+
| 2 | 2 |
+-----+-----+
| 3 | 1 |
+-----+-----+
如果我想通过 aCol2 LIKE 'aa%' 搜索信息并且该行与 bCol1 = 'bob' 有关联(即仅导致行 aID = 2),我如何组装一个可以执行类似操作的 MySQL 查询?
ps 抱歉,不清楚,我不太确定措辞,但简而言之,它是关于从一个记录中搜索数据,该记录(为此)通过连接表具有 1-* 关系多个记录,按存在于整个集合中的信息