Отличительный столбец SQL-запроса Объединяет другой столбец - PullRequest
0 голосов
/ 25 июня 2009

У меня есть запрос MS SQL, который объединяет несколько таблиц, и пример результатов:

EmailAddress          Column2                                      
--------------------- ----------------
sean@abc.com          Value1                                     
sean@abc.com          Value2
test@abc.com          Value5 


What I really want to achieve are the following results:


EmailAddress          Column2                                      
--------------------- ------------------
sean@abc.com          Value1, Value2
test@abc.com          Value5 

Существуют другие столбцы, которые идентичны для каждой строки с тем же адресом электронной почты. Может ли кто-нибудь помочь мне с SQL вернуть отдельные адреса электронной почты и объединить информацию столбца 2?

Спасибо за любые отзывы.

Ответы [ 3 ]

1 голос
/ 25 июня 2009

Попробуйте ответить на этот вопрос

0 голосов
/ 25 июня 2009

Тот же ответ от Джереми, но я бы использовал другой ответ с ПУТЬ XML трюк

0 голосов
/ 25 июня 2009

В SQL Server 2005+:

WITH    q AS
        (
        SELECT  'sean@abc.com' AS address, 'Value1' AS value
        UNION ALL
        SELECT  'sean@abc.com', 'Value2'
        UNION ALL
        SELECT  'test@abc.com', 'Value5'
        )
SELECT  (
        SELECT  CASE WHEN ROW_NUMBER() OVER (ORDER BY value) > 1 THEN ', ' ELSE '' END + value
        FROM    q qi
        WHERE   qi.address = qo.address
        FOR XML PATH('')
        )
FROM    (
        SELECT  DISTINCT address
        FROM    q
        ) qo
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...