Объединить несколько записей в одну запись, принадлежащую человеку? - PullRequest
0 голосов
/ 03 марта 2020

Как превратить следующее:

username | userLastFirst    | email             | approver1         |department
FAlbert  | Albert, Frankie  | abc123@ships.com  | Doe, John         |HR
FAlbert  | Albert, Frankie  | abc123@ships.com  | Smith, Mike       |HR

В это:

username | userLastFirst    | email             | approver1    |approver2   |department
FAlbert  | Albert, Frankie  | abc123@ships.com  | Doe, John    |Smith, Mike |HR

Вместо нескольких строк одного и того же пользователя с их утверждающими, я хочу объединить его в одну запись со столбцами их утверждающих.

1 Ответ

1 голос
/ 03 марта 2020

Если у вас есть две строки, вы можете использовать агрегирование:

select username, userLastFirst, email, min(approver) as approver1 ,
       nullif(max(approver), min(approver)) as approver2, department
from t
group by username, userLastFirst, email, department;
...