【資料庫結構】
其中cdate和type一起是一個主鍵。
----------------------------------------------------
cdate type data1 data2
1001 a 1 1
1001 b 2 2
1001 c 3 3
1002 a 4 4
1002 b 5 5
1002 c 6 6
…
1001 k
1002 f
1003 e
…
----------------------------------------------------
【查詢目標】
想得到 type a,b,c 的 data1 和 data2
期望結果
----------------------------

請教各位大神,應該怎么寫呢?
PS:
實際需求是,每次要查詢的type,型別不固定,數量不固定。想做一個通用的查詢能力。
uj5u.com熱心網友回復:
假設 表名是 A, 用 查詢-新建查詢 交叉表查詢向導 自動生成TRANSFORM First([A 查詢].data1) AS data1之第一條記錄
SELECT [A 查詢].cdate
FROM [SELECT A.cdate, "type "+A.type+" data 1" as TYPE , A.data1
FROM A
UNION ALL SELECT A.cdate,"type "+ A.type+" data 2", A.data2
FROM A]. AS [A 查詢]
GROUP BY [A 查詢].cdate
PIVOT [A 查詢].TYPE;
A 查詢 是為了先將資料表組織成3列
uj5u.com熱心網友回復:
TRANSFORM First([A 查詢].data1) AS data1之第一條記錄
SELECT [A 查詢].cdate
FROM (SELECT A.cdate, "type "+A.type+" data 1" as TYPE , A.data1
FROM A
UNION ALL SELECT A.cdate,"type "+ A.type+" data 2", A.data2
FROM A) AS [A 查詢]
GROUP BY [A 查詢].cdate
PIVOT [A 查詢].TYPE;
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/104094.html
下一篇:有沒有做過投影拼接/融合的朋友
