我需要针对采购发票表运行简单查询,以对供应商发票子集的值求和。通常,这将是以下伪查询的简单情况;
Select Sum(invoiceTotal)
From PurchaseInvoices
Where ContactId = x
我遇到的问题是,我所关注的特定供应商是随机分布在联系人表格中的,所以我不能简单地修改where子句来说明Between x and y
。在我不想要的记录中。
如果为了论证的缘故,我需要总结联系人a,b,c,g,j,k,s和u的值,有没有办法在SQL开头定义联系人列表查询,然后简单地将where子句限制在该列表中的ContactId
?
由于
答案 0 :(得分:2)
您可以使用IN子句提供返回列表的列表或子查询。
Select Sum(invoiceTotal) From PurchaseInvoices
Where ContactId in (x, y, z)
语法
test_expression [ NOT ] IN
( subquery | expression [ ,...n ]
)