这是我的简化工作查询:
select fields, sum(otherFields)
from table1
where table1.field1 in (Select table2.field1
from table2
where table1.id=table2.id
order by table2.date desc limit 100)
group by fields
正如您所看到的,我需要table1
仅table2
中的行,但这些行会被最后一个新行100过滤。
查询花了太长时间,因此我尝试将in
替换为exists
select fields, sum(otherFields)
from table1
where exists (Select table2.field1
from table 2
where table1.id=table2.id
and table1.field=table2.fields
order by table2.date desc limit 100)
group by fields
虽然这适用于在我的情况下不使用限制的查询但它无法正常工作。
那么,我怎样才能正确地过滤table1中与table2中只有有限行数的结果?