Sql server 2012 每次访问的特定模式的Sql输出
我们有一个MS SQL Server 2012,我需要帮助使用SQL查询找出某些模式输出。下面结果的第一个字段需要硬编码字母。D代表人口统计,R代表收入,P代表设计。以下是模式的SQLFIDLE示例: 预期结果:Sql server 2012 每次访问的特定模式的Sql输出,sql-server-2012,Sql Server 2012,我们有一个MS SQL Server 2012,我需要帮助使用SQL查询找出某些模式输出。下面结果的第一个字段需要硬编码字母。D代表人口统计,R代表收入,P代表设计。以下是模式的SQLFIDLE示例: 预期结果: D ID101 James R ID101 $10 P ID101 1001 D ID102 Rock R ID102 $50 P ID102 1002 D ID103 Paul
D ID101 James
R ID101 $10
P ID101 1001
D ID102 Rock
R ID102 $50
P ID102 1002
D ID103 Paul
R ID103 $30
P ID103 1003
那么:
Select 'D' as i, PersonID, name from Demographics
union
Select 'R' as i, PersonID, Payment from Revenue
union
Select 'P' as i, PersonID, Item from Design
order by PersonId, i
有了CTE
很可能是由Ahmed Ashour订购的,谢谢!真不敢相信事情竟那么简单。惊讶。
with t(Indicator, PersonID, Value)
as
(
select 'D', * from Demographics
union
select 'R', * from Revenue
union
select 'P', * from Design
)
select Indicator, PersonID, Value
from t
order by 2, 1