我在使用Access 2016,我想知道是否有一個聚合函數給了我一個值,但只有當這些值對於行的值相同時在該組中,否則爲空。SQL彙總函數,顯示組中是否具有同類值
例如,我有一個帳單清單,每個帳單都有物品。 (只是一個簡單的例子)
Table BILLS
- ID int
- NAME varchar(100)
- ...
Table ITEMS
- ID int
- FK_BILL_ID int
- PRICE currency
- PAID bool
- ...
我的查詢是這樣的:
select b.NAME as Name, sum(i.PRICE) as PriceSum, ????(i.PAID) as PayStatus
from BILLS b
left join ITEMS i on i.FK_BILL_ID = b.ID
group by b.ID, b.NAME
我想達到的目標:
Name | PriceSum | PayStatus
-------+----------+-------------
Bill A | 19,99 | true
Bill B | 12,34 | false
Bill C | 9,99 | null
Bill D | 99,99 | null
- 現場PayStatus應該是真實的,如果所有項目都支付(PAID = true)
- 如果所有項目都不是全部項目,則PayStatus字段應該爲false支付(支付= FALSE)
- Otherways,PayStatus爲空(如果沒有項目,或者如果只有一部分項目進行支付)