79285238

Date: 2024-12-16 15:46:52
Score: 0.5
Natty:
Report link

I was able to find the solution for the query with the assistance of my friend Gregg

This is the final query that returns the NON-ITEM and ITEM Modifiers and combines them in a single column using COALENCE. I thought I needed to join the ITEM_MODIFIER table when I needed to join the ITEM table

SELECT
I.NAME AS 'ITEM NAME'
,ML.NAME AS 'MODIFIER LIST'
,MG.NAME AS 'MODIFIER GROUP'
,COALESCE(M.NAME,IR.name)  AS 'MODIFIER'
,FORMAT(CAST(M.UPCHARGE_EXPRESSION AS numeric), 'c', 'en-us') AS 'UPCHARGE'
FROM ITEM i
LEFT JOIN ITEM_MODIFIER IM ON IM.ITEM_RECORD_KEY = I.RECORD_KEY
LEFT JOIN MODIFIER_LIST ML ON ML.RECORD_KEY = IM.MODIFIER_LIST_RECORD_KEY
LEFT JOIN MODIFIER_GROUP MG ON MG.MODIFIER_LIST_RECORD_KEY = ML.RECORD_KEY
LEFT JOIN MODIFIER M ON M.MODIFIER_GROUP_RECORD_KEY = MG.RECORD_KEY
LEFT JOIN ITEM IR ON IR.RECORD_KEY = M.ITEM_RECORD_KEY
WHERE ML.NAME IS NOT NULL
GROUP BY I.NAME, ML.NAME, MG.NAME, M.NAME, IR.NAME, M.UPCHARGE_EXPRESSION
ORDER BY I.NAME, ML.NAME, MG.NAME, M.NAME

Here you can find the query in action using db<>fiddle https://dbfiddle.uk/tU8tHmJC

Reasons:
  • Blacklisted phrase (0.5): I need
  • Long answer (-1):
  • Has code block (-0.5):
  • Self-answer (0.5):
  • Low reputation (1):
Posted by: Joseph Laurello