采用基本数据库架构:
ansible <hostname> -m setup -a "filter=ansible_local"
在帖子和标签之间具有多对多的关系,因此有一个posts_tags链接表:
posts,
- id, -- PK
- title
tags,
- id, -- PK
- value
我想获得标签对(例如,标签“ sport”和“ international”),它们至少具有N个共同点。如何在SQL中做到这一点?
答案 0 :(得分:3)
SELECT
pt1.tag_id,
pt2.tag_id
FROM
posts_tags pt1
JOIN
posts_tags pt2 ON
pt1.post_id = pt2.post_id
AND pt1.tag_id < pt2.tag_id
GROUP BY
pt1.tag_id,
pt2.tag_id
HAVING
COUNT(*)>10