改进sqlite查询存在于哪里的字段

时间:2017-02-22 12:59:43

标签: sqlite android-sqlite android-sql

这是我的简化工作查询:

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

正如您所看到的,我需要table1table2中的行,但这些行会被最后一个新行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中只有有限行数的结果?

0 个答案:

没有答案