这个SQLite select语句有什么错误?

这个SQLite select语句有什么错误?,select,sqlite,group-by,Select,Sqlite,Group By,我有两张桌子: 表1是: ID fname lname --------------------- 11 p1 p2 22 a1 a2 表2为: ID fk_id field1 field2 ------------------------------ 1 11 2 3 2 22 5 4 我在sqlite中有这样一句话: select * from T

我有两张桌子:

表1是:

ID fname lname --------------------- 11 p1 p2 22 a1 a2 表2为:

ID fk_id field1 field2 ------------------------------ 1 11 2 3 2 22 5 4 我在sqlite中有这样一句话:

select * from Table1 where Table1.id=(select fk_id from Table2 where (select sum([field1]-[field2]) from Table2 GROUP BY [fk_id]) > 0) 我希望这个查询返回Table1的所有行,但它只返回一行

为什么


我不明白

如果有结果会有帮助

我猜是因为表11 sum2-3=-1 这对我来说是失败的

select fk_id
                 from Table2
                 where (select sum([field1]-[field2]) 
                        from Table2 GROUP BY [fk_id]) > 0
所以你的成绩只有22分


那么您可能需要一个abssum[field1]-[field2]。

如果有结果,它会有所帮助

我猜是因为表11 sum2-3=-1 这对我来说是失败的

select fk_id
                 from Table2
                 where (select sum([field1]-[field2]) 
                        from Table2 GROUP BY [fk_id]) > 0
所以你的成绩只有22分


那么您可能需要一个abssum[field1]-[field2]。

其中Table1.id=。。这是一个单数匹配。如果你真的喜欢子查询,请使用联接而不是子查询,或者在中使用联接。问题是此语句没有意义。你到底想要什么?有很多用户2864740;我用过,效果很好!其中Table1.id=。。这是一个单数匹配。如果你真的喜欢子查询,请使用联接而不是子查询,或者在中使用联接。问题是此语句没有意义。你到底想要什么?有很多用户2864740;我用过,效果很好!