我正在加入HANA上的兩個表,爲了獲得一些統計信息,我將LEFT加入項目表3次以獲得總數,條目數處理和錯誤的數量,如下所示。在同一個表上聚合的多個左連接導致SAP HANA中的巨大性能下降
這是一個開發系統,項目表只有1500個項目。但下面的查詢運行17秒。
當我刪除三個聚合術語中的任何一個(但保留相應的JOIN)時,查詢幾乎立即執行。
我也嘗試在特定的JOIN中使用的字段上添加索引,但這沒有區別。
select rk.guid, rk.run_id, rk.status, rk.created_at, rk.created_by,
count(distinct rp.guid),
count(distinct rp2.guid),
count(distinct rp3.guid)
from zbsbpi_rk as rk
left join zbsbpi_rp as rp
on rp.header = rk.guid
left join zbsbpi_rp as rp2
on rp2.header = rk.guid
and rp2.processed = 'X'
left join zbsbpi_rp as rp3
on rp3.header = rk.guid
and rp3.result_status = 'E'
where rk.run_id = '0000000010'
group by rk.guid, run_id, status, created_at, created_by