我在条目和关键字之间有一个多对多的关系,连接表条目_关键字。我想获取键“wake”和“up”的所有条目。我想出的唯一方法就是这个。如果我想输入另一个搜索词,它会变得更糟。你如何重构这个?除了使用子查询之外,还有其他加入它的方法吗?
select *
from
(
select *
from entries e
inner join entries_keywords ek
on e.id = ek.entry_id
inner join keywords k
on ek.keyword_id = k.id
where k.key = 'wake'
) e
inner join entries_keywords ek
on e.id = ek.entry_id
inner join keywords k
on ek.keyword_id = k.id
where k.key = 'up';