Нужен универсальный скрипт транспонирования - PullRequest
0 голосов
/ 17 мая 2019

enter image description here

Ниже приведена таблица для конкретного идентификатора транзакции

TransactionId FirstName Lastname ContactNo ....
    27           John      A        123
    27           Mark      B        124 

Мне нужно поставить как

TransactionId FirstName Lastname ContactNo FirstName Lastname ContactNo ....
   27           John       A        123       Mark      B        124

1 Ответ

0 голосов
/ 17 мая 2019
SELECT @col_list = Stuff((SELECT ',id = max(case when id = '
                             + Cast(id AS VARCHAR(50))
                             + ' then id end), mobilenumber = max(case when id = '
                             + Cast(id AS VARCHAR(50))
                             + ' then mobilenumber  end)'                                
                      FROM   [dbo].[TransactionContact] where  transactionid in (137103,137102)

                      ORDER  BY id
                      FOR xml path('')), 1, 1, '')

EXEC ('select' + @ col_list + 'из [dbo]. [TransactionContact]')

Это работает, как указано выше, но приносит контакт для всех транзакций в одной строке вместо другой строки

...