我有一個表中包含的數據(有更多ITEMID每個與MODULESTYPE 0,1和2多凡在同一個查詢和行的條件
ITEMID MODULETYPE UNITID
E-MA0860S 0 base
E-MA0860S 1 purch
E-MA0860S 2 sales
我想要做什麼是價值觀進入一排這個
ITEMID Base UOM PUOM SUOM
E-MA0860S base purch sales
我有一個表中包含的數據(有更多ITEMID每個與MODULESTYPE 0,1和2多凡在同一個查詢和行的條件
ITEMID MODULETYPE UNITID
E-MA0860S 0 base
E-MA0860S 1 purch
E-MA0860S 2 sales
我想要做什麼是價值觀進入一排這個
ITEMID Base UOM PUOM SUOM
E-MA0860S base purch sales
嘗試有些人認爲這樣的
SELECT ItemID,
MIN(CASE WHEN MODULETYPE=0 THEN UNITID END) AS [Base UOM]
MIN(CASE WHEN MODULETYPE=1 THEN UNITID END) AS [PUOM]
MIN(CASE WHEN MODULETYPE=2 THEN UNITID END) AS [SUOM]
FROM TableName
GROUP BY ItemID
這是非常棒的,只是我之後 - 謝謝 – George
您可以使用自聯接
select a.ITEMID, a.UNITID as UOM, b.UNITID AS PUOM , c.UNITID as SUOM
from my_table a
inner join my_table b on a.ITEMID = b.ITEMID and b.MODULETYPE=1
inner join my_table c on a.ITEMID = c.ITEMID and c.MODULETYPE=2
where a.MODULETYPE = 0
如果ITEMID只有一個或兩個條目,預期的結果是什麼? – jarlh
標記您正在使用的dbms。 (答案可能取決於dbms。) – jarlh