每次访问都以某种模式输出Sql

时间:2018-01-04 23:52:00

标签: sql-server-2012

我们有一个MS SQL Server 2012,我需要帮助找出使用SQL查询的某些模式输出。下面结果的第一个字段需要是硬编码字母。 D代表人口统计,R代表收入,P代表设计。这是架构的sqlfiddle示例: here

预期结果:

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

2 个答案:

答案 0 :(得分:1)

使用CTE,

http://sqlfiddle.com/#!6/bed148/4/3

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

答案 1 :(得分:0)

怎么样:

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