2012-10-25 25 views
0

您好,感谢您的关注SQL Server两行一体

我需要将来自两个不同行的数据转换为一行。

让我们想象一下

ORDERS表:

ID Name adress 
-------------------- 
01 AA  adr1 
02 BB  adr2 
03 CC  adr3 

LINEORDERS表:

ID IDorder IDprofileType  ProfileType  idPers 
------------------------------------------------------------- 
01 01   01    Organizer  0045 
01 01   02    Present   0085 
01 01   02    Present   0032 
01 01   03    Manager   0018 

让我们想象一下,我们希望作为结果>

期望的结果:

IDorder NameOrder  OrganizerID   PresentID   ManagerID  Diff 
------------------------------------------------------------- 
01  AA   0045     0085    0018   yes 
01  AA   0045     0032    0018   yes 

Diff是的,如果managerIDorganizerID是不同的。

我怎样才能得到这样的结果?

我是否需要创建T-SQL临时表?更轻的是什么?

我在表格中有很多行。

感谢您的帮助

+0

哪里得到肯定ü可以通过 –

+1

@ArunKillu的问题是关于MS SQL Server和使用CONCAT与组** **不MySQL的 –

+0

有类似的东西在MS SQL –

回答

0

你可以用子查询做到这一点,但我真的认为你必须在这里做一些重组。因为会有很多子查询。