如何在 "positive value occurance" 上告诉 SQL 为 return TRUE 而不是使用 SUM(field) >0 条件
How to tell SQL to return TRUE on "positive value occurance" rather than using SUM(field) >0 condition
我正在对 QTY 字段进行汇总,该字段的值为 0 或正值。因此,任何正数的存在都可以预测总和将大于 0。一旦找到正值而不是对所有行求和,是否有任何方法 return true ?是DB2数据库。
select *
from a
where a_id in (1,2,3,4)
and
(
flag = 'Y'
or
(select sum(qty) from b where b.a_id = a.a_id) > 0
)
使用 EXISTS 会更快吗?
select *
from a
where a_id in (1,2,3,4)
and
(
flag = 'Y'
or
EXISTS (select b.a_id from b where b.a_id = a.a_id and qty>0)
)
我正在对 QTY 字段进行汇总,该字段的值为 0 或正值。因此,任何正数的存在都可以预测总和将大于 0。一旦找到正值而不是对所有行求和,是否有任何方法 return true ?是DB2数据库。
select *
from a
where a_id in (1,2,3,4)
and
(
flag = 'Y'
or
(select sum(qty) from b where b.a_id = a.a_id) > 0
)
使用 EXISTS 会更快吗?
select *
from a
where a_id in (1,2,3,4)
and
(
flag = 'Y'
or
EXISTS (select b.a_id from b where b.a_id = a.a_id and qty>0)
)