Может кто-нибудь помочь мне в написании запроса SQL, который определяется следующим образом: я с двумя столовыми ItemType и товарыSQL Query требуется с помощью КТР
Itemtype
-------------------
ItemTypeID ItemParent TypeName
-------------------------------
1 0 XXX
2 1 YYY
3 1 ZZZ
4 0 SSS
5 4 GGG
Items
--------------------
ItemID ItemTypeID ItemCost
----------------------------------
1 1 5000
2 2 1000
3 4 250
4 3 2000
5 5 400
Output
---------------------------
ItemtypeName ItemCost
------------------------------
XXX 8000 (1000+5000+2000)
SSS 650 (250+400)
Эти две таблицы: Я присоединился как таблицу, используя itemtypeid. Теперь мне нужно отобразить Элементы с ItemParentId = 0 и рассчитать Itemcost элементов с ItemtypeId и ItemparentTypeId, имеющих значение, такое же, как ItemTypeID.
Я написал запрос с использованием CTE, но не отобразил ItemTypeName.
WITH it_cte AS (select itemtypeid from ItemType WHERE
ItemType.ItemParentType IS NULL UNION ALL select i.ItemTypeid from
ItemType i INNER JOIN it_cte icte ON icte.itemtypeid = i.itemtypeid)
select ItemParentType,SUM(Items.ItemCost) as itemcost from ItemType
left join Items on ItemType.ItemTypeID = Items.ItemTypeID or
ItemType.ItemParentType= Items.ItemTypeID group by
ItemType.ItemParentType
Может ли кто-нибудь помочь?
Благодаря Jamuna
Вы заявление не соответствует вашему примеру. В вашем примере нет элемента ItemParentType и значений 'NULL'. Можно ли предположить, что 'ItemParentType' является' ItemParent' и что '0' должно быть' NULL'? –