小编Jof*_*ams的帖子

在MySQL中选择多对多关系

我在MySQL数据库中有两个表,Locations和Tags,以及第三个表LocationsTagsAssoc,它们将两个表关联起来并将它们视为多对多关系.

表结构如下:

Locations
---------
ID int (Primary Key)
Name varchar(128)

LocationsTagsAssoc
------------------
ID int (Primary Key)
LocationID int (Foreign Key)
TagID int (Foreign Key)

Tags
----
ID int (Primary Key)
Name varchar(128)
Run Code Online (Sandbox Code Playgroud)

因此,每个位置都可以使用多个标记字进行标记,并且每个标记字都可以标记为多个位置.

我想要做的是只选择标有所有提供的标签名称的位置.例如:

我想要所有标有"树"和"秋千"的地点.应选择位置"公园",但不应选择位置"森林".

任何见解将不胜感激.谢谢!

mysql sql-match-all

5
推荐指数
1
解决办法
2394
查看次数

标签 统计

mysql ×1

sql-match-all ×1