【发布时间】:2015-09-16 09:19:05
【问题描述】:
我有两张桌子:
表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 中有这样的声明:
从表 1 中选择 *
其中 Table1.id=(选择 fk_id
从表 2
其中(选择总和([field1]-[field2])
来自 Table2 GROUP BY [fk_id]) > 0)
我希望这个查询返回 Table1 的所有行,但它只返回一行!
为什么?!
我看不懂!
【问题讨论】:
-
where Table1.id=(..)是单数匹配。使用 JOIN 而不是子查询(或者IN如果真的喜欢子查询)。 -
问题是这个说法没有意义。你到底想要什么?
-
tnx 很多! :) user2864740 ;) 我使用了 IN 并且效果很好!