2017-08-11 36 views
0

我试图将多行组合成一行。如何在ms中将列信息组合成一行SQL Server Management 2005

Office 1 NULL NULL 12/15/2020 
Office 1 NULL 10/15/2008 NULL 
Office 1 1949885 NULL  NULL 

我使用的内用case语句加入到查询的信息。我只是想不出如何将所有的数据合并成一排

我希望我的结局是这个

Office 1 1949885 10/15/2008 12/15/2020 

这里是我的查询

select distinct GroupName, (case when userid=1 then data end) as TPI, 
    (case when userid=4 then data end) as Enrollment_Date, 
    (case when userid=19 then data end) as Expiration_Date 
    from offices 
    inner join userdefinedoff uo on uo.OfficeID=Offices.OfficeID 
    where userid=1 or userid=4 or userid=19 

所有数字数据存储为串。

回答

0
select 
office1column, 
max(Col1), 
max(COl2) 
.. 
from 
table 
group by office1column 

最大/最小值会忽略一组空值,让您的值,如果目前

+0

曾任职完美。谢谢! – ryanb082

+0

@ ryanb082:很高兴它帮助..我建议看看这个链接,以便它可以帮助你如何提出未来的问题,并且你也可以得到upvotes:https://spaghettidba.com/2015/04/ 24 /如何到后在-SQL的问题上,一个公开论坛/ – TheGameiswar

相关问题