use*_*474 5 sql sql-server pivot
我在SQL中有2个表.
dbo.main
|id | mid | tid
1 yes no
Run Code Online (Sandbox Code Playgroud)
dbo.external
| id | type | element |
1 c 9
1 d 10
1 h 11
1 g 12
Run Code Online (Sandbox Code Playgroud)
我试图实现的是:
| id | mid | tid | c | d | h | g |
1 yes no 9 10 11 12
Run Code Online (Sandbox Code Playgroud)
我尝试在dbo.external statment上使用pivot作为
SELECT *
FROM
(
SELECT id,type,element
FROM dbo.external
) SRC
PIVOT
(
MAX(FIELD_DATA)
FOR FIELD_NUMBER IN (id,type,element)
) PIV;
Run Code Online (Sandbox Code Playgroud)
问题是:如何在一个sql语句中转动dbo.external然后加入dbo.main?
只是源查询中JOIN的Main表Pivot
SELECT *
FROM (SELECT e.id,mid,tid,[element],[type]
FROM dbo.[external] e
JOIN main m
ON e.id = m.id) a
PIVOT ( Max([element])
FOR [type] IN ([c],[d],[h],[g]) ) PIV
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
415 次 |
| 最近记录: |