commit: 2025-07-29 00:01:41
This commit is contained in:
parent
91ccf40ac2
commit
099503ae6b
@ -1,90 +0,0 @@
|
|||||||
|
|
||||||
-- SELECT count(*) FROM rlarp.osm_stack o INNER JOIN #lastprice l ON
|
|
||||||
-- l.customer = o.customer AND o.mold = l.mold
|
|
||||||
|
|
||||||
SELECT
|
|
||||||
o.ordnum,
|
|
||||||
o.part,
|
|
||||||
o.odate,
|
|
||||||
lp.customer,
|
|
||||||
lp.mold,
|
|
||||||
p.[key] AS part, -- this is the part number
|
|
||||||
j.qty,
|
|
||||||
j.price,
|
|
||||||
j.odate,
|
|
||||||
j.ordnum,
|
|
||||||
j.quoten
|
|
||||||
FROM
|
|
||||||
rlarp.osm_stack o
|
|
||||||
LEFT OUTER JOIN pricing.lastprice lp ON
|
|
||||||
lp.customer = o.customer
|
|
||||||
AND lp.mold = o.mold
|
|
||||||
CROSS APPLY OPENJSON(lp.part_stats) AS p -- unpacks part keys
|
|
||||||
CROSS APPLY OPENJSON(p.value)
|
|
||||||
WITH (
|
|
||||||
qty FLOAT,
|
|
||||||
price FLOAT,
|
|
||||||
odate DATE,
|
|
||||||
ordnum INT,
|
|
||||||
quoten INT
|
|
||||||
) AS j
|
|
||||||
WHERE
|
|
||||||
o.customer = 'ALTMAN PLANTS'
|
|
||||||
AND o.mold = 'XPR15CS1'
|
|
||||||
AND o.ordnum = 935360
|
|
||||||
|
|
||||||
WITH exploded AS (
|
|
||||||
SELECT
|
|
||||||
lp.customer,
|
|
||||||
lp.mold,
|
|
||||||
p.[key] AS part_key,
|
|
||||||
j.qty,
|
|
||||||
j.price,
|
|
||||||
j.odate,
|
|
||||||
j.ordnum,
|
|
||||||
j.quoten,
|
|
||||||
CASE WHEN p.[key] = o.part COLLATE Latin1_General_BIN2 THEN 1 ELSE 0 END AS is_exact_match,
|
|
||||||
ROW_NUMBER() OVER (PARTITION BY lp.customer, lp.mold ORDER BY j.odate DESC) AS rn_most_recent
|
|
||||||
FROM rlarp.osm_stack o
|
|
||||||
LEFT JOIN pricing.lastprice lp ON lp.customer = o.customer AND lp.mold = o.mold
|
|
||||||
CROSS APPLY OPENJSON(lp.part_stats) AS p
|
|
||||||
CROSS APPLY OPENJSON(p.value)
|
|
||||||
WITH (
|
|
||||||
qty FLOAT,
|
|
||||||
price FLOAT,
|
|
||||||
odate DATE,
|
|
||||||
ordnum INT,
|
|
||||||
quoten INT
|
|
||||||
) AS j
|
|
||||||
WHERE
|
|
||||||
o.customer = 'ALTMAN PLANTS'
|
|
||||||
AND o.mold = 'XPR15CS1'
|
|
||||||
AND o.ordnum = 935360
|
|
||||||
),
|
|
||||||
tagged AS (
|
|
||||||
SELECT
|
|
||||||
part_key,
|
|
||||||
qty,
|
|
||||||
price,
|
|
||||||
odate,
|
|
||||||
ordnum,
|
|
||||||
quoten,
|
|
||||||
IIF(is_exact_match = 1, 1, NULL) AS is_exact_match,
|
|
||||||
IIF(rn_most_recent = 1, 1, NULL) AS is_most_recent
|
|
||||||
FROM exploded
|
|
||||||
)
|
|
||||||
--SELECT * FROM taggeg
|
|
||||||
SELECT (
|
|
||||||
SELECT
|
|
||||||
part_key AS [key],
|
|
||||||
qty,
|
|
||||||
price,
|
|
||||||
odate,
|
|
||||||
ordnum,
|
|
||||||
quoten,
|
|
||||||
is_exact_match,
|
|
||||||
is_most_recent
|
|
||||||
FROM tagged
|
|
||||||
FOR JSON PATH, INCLUDE_NULL_VALUES
|
|
||||||
) AS updated_json_array;
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user