MS Access 从宽格式到长格式 新变量 Union ALL

MS Access From Wide Format to Long Format New variable Union ALL

我是 MS Access 的新手,需要一些帮助。我有一个看起来像这样的 table:

ID HDD CDD HDDKEY CDDKEY
186 -1 -1 1 5

并想要以下内容:

ID HDD CDD KEY
186 -1 0 1
186 0 -1 5

我的代码 - 不起作用:

SELECT 
TABL1.ID, 
TABL1.HDD, 
TABL1.CDD, 
'KEY'  = HDDKEY
FROM TABL1

UNION ALL

SELECT 
TABL1.ID, 
TABL1.HDD, 
TABL1.CDD, 
'KEY'  = CDDKEY
FROM TABL1

WHERE (((TABL.ID)=18676));```

Thank you!

你很接近

SELECT TABL1.ID, TABL1.HDD, 0 AS CDD, HDDKEY as [Key]
FROM TABL1
WHERE ID = 186
UNION ALL
SELECT TABL1.ID, 0 AS HDD, TABL1.CDD, CDDKEY as [Key]
FROM TABL1
WHERE ID = 186;

请注意,KEY 是一个糟糕的列名,因为它是一个 SQL 关键字。