外键列的 SQL Pivot
Posted
技术标签:
【中文标题】外键列的 SQL Pivot【英文标题】:SQL Pivot for foreign key column 【发布时间】:2009-04-27 17:55:13 【问题描述】:我有一张这样的桌子: 财政年度、地区、国家、办公室1、办公室2、办公室3、办公室4
office 1-4 是外键。
我想得到这样的输出: 办公室 1:财政年度、地区、国家 办公室 2:财政年度、地区、国家 办公室 3:财政年度、地区、国家 办公室 4:财政年度、地区、国家
这可以使用枢轴完成吗?
【问题讨论】:
【参考方案1】:我认为这更像是 UNPIVOT:
SELECT [Fiscal Year], Region, County, OFfice
FROM
(SELECT [Fiscal Year], Region, County, OFfice1, Office2, Office3, Office4
FROM unpvt) p
UNPIVOT
(yourtable FOR Office IN
(Office1, Office2, Office3, Office4)
) AS unpvt;
但是你也可以通过一个简单的查询来做到这一点:
select [Fiscal Year], Region, County, OFfice1
from yourtable
union
select [Fiscal Year], Region, County, OFfice2
from yourtable
union
select [Fiscal Year], Region, County, OFfice3
from yourtable
union
select [Fiscal Year], Region, County, OFfice4
from yourtable
【讨论】:
以上是关于外键列的 SQL Pivot的主要内容,如果未能解决你的问题,请参考以下文章