Я очень новичок в mysql и sql в целом. Ни один из моих результатов поиска не принес искомого решения. У меня есть база данных, и мне нужно отформатировать вывод, как в примере ниже. К сожалению, я больше не могу изменить базу данных, поскольку это старый проект другого сотрудника.
Исходная таблица:
CustomerID serviceID ratingID employeeID
1 1 A 1
1 2 B 5
1 3 B 2
1 4 A 3
2 1 A 1
2 2 C 5
2 3 D 2
2 4 C 3
3 1 T 1
3 2 O 5
3 3 T 2
3 4 O 3
У каждого клиента есть четыре записи, по одной для каждой услуги. Они установили рейтинги и сотрудников.
Вывод, который мне нужен (employeeID можно игнорировать):
CustomerID ServiceID=1 ServiceID=2 ServiceID=3 ServiceID=4
1 A B B A
2 A C D C
3 T O T O
Я нашел решения с group_concat (if ()) ... в операторе select и группировку по customerID, которая только принес значения «1» в каждом поле, а не связанные значения. Я пытался связать потерянный выбор вместе с объединением или подвыбором, но ни один из них не дал результата, который я ищу. У кого-нибудь есть дружеская помощь новичку?