我有這樣的SQL查詢去:顯示所有記錄(包括null),而無需通過所有記錄
select "Amount",
"Month",
SCWM.out_menu1Text
from
(select sum(II2.LocalTAmountWithoutVAT) as "Amount",
ib_string_right('00' || ib_decodedate_month(II.docdate$date), 2) as "Month",
sc.id as "Menu"
from IssuedInvoices2 II2
join IssuedInvoices II on II.id = II2.parent_id
left join StoreCards SC on SC.ID = II2.StoreCard_ID
left join firms F on F.id = II.firm_id
where
ib_decodedate_year(II.docdate$date) = (EXTRACT(YEAR FROM CURRENT_DATE))
and ib_decodedate_month(II.docdate$date) >= @{_od}
and ib_decodedate_month(II.docdate$date) <= @{_do}
and F.id = '@{_firmID}'
group by
ib_string_right('00' || ib_decodedate_month(II.docdate$date), 2),
"Menu")
left join ABI_StoreCardsWithMenu("Menu") SCWM on SCWM.OUT_StoreCard_ID = "Menu"
order by
SCWM.out_menu1Text
這個結果:
但我要實現這一點:
Wanted table http://img32.imageshack.us/img32/9486/mjw7.png
功能ABI_StoreCardsWithMenu("Menu") SCWM
需要列「菜單」並返回右側組。例如,在數據庫是「釘」,該函數採用「釘」的ID,並返回組的名稱 - >「01Potrubí一個fitinky」。
之所以得到這麼短表,在SQL查詢中使用條件WHERE子句。如果公司名片公司沒有任何sc.id
屬於第二集團「02Nářadí」,然後組將不會出現在結果列表中。
我需要的是解決方案,它顯示所有羣體,但我需要避免在數據庫中的每個記錄讀數(數據庫是如此巨大,在加載所有記錄需要10-20分鐘)。
您的問題標題並不真正是您的實際問題,我無法理解您想要達到的目標。 –
我改寫了我的問題。現在,我希望能更好地解釋我的問題。 – Sk1X1