From 07de924a077735b82fa770ffbee9bf8691d4ca91 Mon Sep 17 00:00:00 2001 From: admin user Date: Thu, 18 Jun 2026 18:36:15 +0000 Subject: [PATCH] Update main.sql --- main.sql | 35 +++++++++++++++++++++++++---------- 1 file changed, 25 insertions(+), 10 deletions(-) diff --git a/main.sql b/main.sql index 0580eb8..5634bd9 100644 --- a/main.sql +++ b/main.sql @@ -1,4 +1,22 @@ -WITH abc AS ( +WITH connected_keyset AS ( + SELECT DISTINCT keys.application_key + FROM jsonb_array_elements_text( + COALESCE($connected_application_keys::jsonb, '[]'::jsonb) + ) AS keys(application_key) + WHERE keys.application_key IS NOT NULL + AND keys.application_key <> '' +), + +lookup_keyset AS ( + SELECT $application_key AS application_key + WHERE $application_key IS NOT NULL + AND $application_key <> '' + UNION + SELECT application_key + FROM connected_keyset +), + +abc AS ( SELECT DISTINCT ON (app.application_key) app.application_key, CAST(app.application_timestamp AS TIMESTAMP) AS application_timestamp, @@ -26,7 +44,9 @@ WITH abc AS ( CAST(NULLIF(NULLIF(LOWER(TRIM(ref.longitude_ref::text)), ''), 'none') AS DOUBLE PRECISION) AS longitude_ref, CAST(NULLIF(NULLIF(LOWER(TRIM(scores.hd_score_m2::text)), ''), 'none') AS DOUBLE PRECISION) AS hd_score_m2 -- CAST(NULLIF(NULLIF(LOWER(TRIM(scores.hd_score_iso_m2::text)), ''), 'none') AS DOUBLE PRECISION) AS hd_score_iso_m2 - FROM public.applications AS app + FROM lookup_keyset AS lk + JOIN public.applications AS app + ON app.application_key = lk.application_key LEFT JOIN public.bridge_funding_lifecycle AS master ON app.application_key = master.application_key LEFT JOIN public.originated_loan AS loans @@ -43,10 +63,6 @@ WITH abc AS ( CAST(SUBSTRING(REGEXP_REPLACE(ref.postal_code_ref::text, '[^0-9]', '', 'g') FOR 5) AS INTEGER) LEFT JOIN public.scores AS scores ON app.application_key = scores.application_key - WHERE app.application_key = $application_key - OR app.application_key IN ( - SELECT jsonb_array_elements_text(COALESCE($connected_application_keys::jsonb, '[]'::jsonb)) - ) ORDER BY app.application_key, app.application_timestamp DESC ), @@ -73,9 +89,8 @@ connected_apps AS ( a.*, a.application_key AS connected_app_key FROM abc a - WHERE application_key IN ( - SELECT jsonb_array_elements_text(COALESCE($connected_application_keys::jsonb, '[]'::jsonb)) - ) + JOIN connected_keyset AS ck + ON ck.application_key = a.application_key ), clusters_alt AS ( @@ -341,4 +356,4 @@ SELECT COALESCE((SELECT MAX(input_ip_distinct_zip_24h) FROM input_ip_velocity), 0) AS input_ip_distinct_zip_24h FROM clusters c LEFT JOIN clusters_g2 g2 - ON c.application_key = g2.application_key; + ON c.application_key = g2.application_key; \ No newline at end of file