From 8682847259fea2f7b0dbd3c6837892a23cccd731 Mon Sep 17 00:00:00 2001 From: Irina Peshinskaya Date: Fri, 13 Nov 2015 08:45:16 +0200 Subject: [PATCH] MT#16321 More narrow conditions for subquery to improve billing_mappings speed Change-Id: I4c86b84b1e49edcdcadd134f9e2acb0792f02822 --- lib/NGCP/Schema/Result/billing_mappings_actual.pm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/NGCP/Schema/Result/billing_mappings_actual.pm b/lib/NGCP/Schema/Result/billing_mappings_actual.pm index dc9ebb2f..366410c2 100644 --- a/lib/NGCP/Schema/Result/billing_mappings_actual.pm +++ b/lib/NGCP/Schema/Result/billing_mappings_actual.pm @@ -60,7 +60,8 @@ select bm.contract_id,max(bm.id) as actual_bm_id from billing.billing_mappings b (select bmm.contract_id, max(bmm.start_date) max_start_date from billing.billing_mappings bmm where ( bmm.`end_date` >= ? OR bmm.`end_date` IS NULL ) - AND ( bmm.`start_date` <= ? OR bmm.`start_date` IS NULL ) + AND ( bmm.`start_date` <= ? OR bmm.`start_date` IS NULL ) + AND ( ? is null OR bmm.`contract_id` = ? ) group by bmm.contract_id ) bmm on bm.contract_id=bmm.contract_id and (bm.start_date=bmm.max_start_date or (bmm.max_start_date is null and bm.start_date is null)) group by bm.contract_id