duplicate dss dsq key sets built into json
This commit is contained in:
parent
213d1419fb
commit
47d77d3706
@ -166,14 +166,26 @@ WITH exploded_flags AS (
|
|||||||
)
|
)
|
||||||
--SELECT * FROM flag_json
|
--SELECT * FROM flag_json
|
||||||
-- Step 3.4: Nest dss/dsq under each dataseg
|
-- Step 3.4: Nest dss/dsq under each dataseg
|
||||||
|
-- Only keep the most recent dss/dsq per dataseg/version (prevents duplicate keys)
|
||||||
,seg_pieces AS (
|
,seg_pieces AS (
|
||||||
SELECT
|
SELECT
|
||||||
customer,
|
customer,
|
||||||
partgroup,
|
partgroup,
|
||||||
dataseg,
|
dataseg,
|
||||||
STRING_AGG(json_piece, ',') AS inner_json
|
STRING_AGG(json_piece, ',') AS inner_json
|
||||||
|
FROM (
|
||||||
|
SELECT sf.*
|
||||||
|
FROM (
|
||||||
|
SELECT *,
|
||||||
|
ROW_NUMBER() OVER (
|
||||||
|
PARTITION BY customer, partgroup, dataseg, flag
|
||||||
|
ORDER BY odate DESC, version DESC -- prefer most recent, then prefer 'Actual' over 'Quotes'
|
||||||
|
) AS rn
|
||||||
FROM serialized_flags
|
FROM serialized_flags
|
||||||
WHERE flag IN ('dss', 'dsq')
|
WHERE flag IN ('dss', 'dsq')
|
||||||
|
) sf
|
||||||
|
WHERE sf.rn = 1
|
||||||
|
) deduped
|
||||||
GROUP BY customer, partgroup, dataseg
|
GROUP BY customer, partgroup, dataseg
|
||||||
)
|
)
|
||||||
--SELECT * FROM seg_pieces
|
--SELECT * FROM seg_pieces
|
||||||
|
Loading…
Reference in New Issue
Block a user