Показывать учетные записи с несколькими контактами в виде отдельных столбцов, а не строк? - PullRequest
0 голосов
/ 25 октября 2019

Предположим, у меня есть таблица контактов. В этой таблице есть идентификаторы контактов и идентификаторы счетов. Поэтому, если я сделаю

Select ContactID,AccountID From table

, я получу это:

enter image description here

Вместо этого я хочучтобы увидеть это:

enter image description here

Это правдоподобно?

1 Ответ

1 голос
/ 25 октября 2019

С двумя и только двумя контактами в расчете на одну учетную запись агрегирование кажется простым вариантом:

select account_id, min(contactId) contactId1, max(contactId) contactId2
from mytable
group by account_id

Если у некоторых учетных записей есть 2 контакта, а у других только 1, то:

select 
    account_id, 
    min(contactId) contactId1, 
    case when count(*) > 1 then max(contactId) end contactId2
from mytable
group by account_id
...