这是那些日子之一,我就是想不通。
我有以下查询:
SELECT * FROM wp_posts
JOIN wp_term_relationships ON wp_term_relationships.object_id = wp_posts.ID
WHERE term_taxonomy_id = 80
显然,这会选择类别 ID 80 中的所有帖子。我需要做的是选择类别 80 但不在类别 109 中的所有帖子。
我试过这个,但它只是从类别 80 中选择相同的帖子。
SELECT * FROM wp_posts
JOIN wp_term_relationships ON wp_term_relationships.object_id = wp_posts.ID
WHERE term_taxonomy_id = 80
AND term_taxonomy_id = 109
这是表结构:
wp_posts
| ID |
------------
| 1 |
| 2 |
wp_term_relationships
| object_id | term_taxonomy_id |
|-----------|------------------|
| 1 | 80 |
| 2 | 80 |
| 1 | 109 |
object_id 与 post_id 匹配
查询应该只返回 ID 2,因为 ID 1 在 80 和 109 中。
我知道我已经做过一百万次了,但我这辈子都无法让它发挥作用。有什么帮助吗?