我試圖從主表中選擇不同的值,並從子表中重複的值。 我有4個表:從主表中選擇不同的值,並從連接的表中重複值
- 發票
- invoiceLine
- 產品
- 業務夥伴
我的查詢:
select
c_invoice.c_invoice_ID,
c_bpartner.name as "Business Partner",
M_Product.name as "Product",
c_invoiceline.priceentered as "amount"
from adempiere.c_invoice
left join adempiere.c_invoiceline on c_invoice.c_invoice_ID=c_invoiceline.c_invoice_ID
left join adempiere.M_Product on c_invoiceline.M_Product_ID =M_Product.M_Product_ID
left join adempiere.C_BPartner on c_invoice.c_bpartner_ID=c_bpartner.c_bpartner_id
where c_invoice.sh_booking_ID=1000019 and c_invoice.c_doctypetarget_id=1000005
我的查詢結果:
INVOICEID BUSINESS Partner PRODUCT AMT
1000005; "Tehmoor"; "Charge 1"; 1200
1000005; "Tehmoor"; "Standard"; 1500
1000006; "Rafay"; "Charge 1"; 1200
1000006; "Rafay"; "Standard"; 1100
和預期的結果
INVOICEID BUSINESS Partner PRODUCT AMT
1000005; "Tehmoor"; "Charge 1"; 1200
; NULL; "Standard"; 1500
1000006; "Rafay"; "Charge 1"; 1200
; NULL; "Standard"; 1100
您有「業務合作伙伴」-eq null在預期結果的第二和第四行 - 爲什麼? –
這是合乎邏輯的,因爲發票是爲單個業務合作伙伴創建的。 –