我有这样的查询:
select p.title
from Posts p
where p.id in (select id from Votes where timestamp between $x and $y);
现在想用这个表代替 Posts
:
select title from Posts1
union all
select title from Posts2
如何在第一个查询中写这个 ^ 而不是 Posts
?
最佳答案
尝试下面的查询,希望它会表现得更好-
SELECT p.title FROM Posts1 p JOIN votes v ON p.id=v.id
WHERE v.timestamp BETWEEN $X AND $Y
UNION ALL
SELECT p.title FROM Posts2 p JOIN votes v ON p.id=v.id
WHERE v.timestamp BETWEEN $X AND $Y;
关于mysql - 有IN子句时如何使用UNION ALL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34529746/