Допустим, у меня есть основная таблица драйверов с именем Employee
со следующими данными и столбцами:
EMPLOYEE_ID EMPLOYEE_NAME EMPLOYEE_CAR EMPLOYEE_AGE
----------------------------------------------------------------
1 Mike Camry 35
2 Mark Civic 33
3 Helen Beetle 25
И у меня есть еще одна таблица с именем Employee_Feedback
со следующими данными и столбцами:
EMPLOYEE_FEEDBACK_ID EMPLOYEE_ID FEEDBACK_COMMENT_TX
---------------------------------------------------------------
1 1 Very Good
2 1 Average
3 1 Phenomenal
4 2 Okay
5 2 NO Comment
6 3 Excellent
7 3 Hilarious
С данными из таблиц Employee
и Employee_Feedback
я хочу, чтобы мой запрос мог возвращать все строки в Employee, а также объединять все «связанные» сообщения обратной связи сотрудника из Employee_feedback
в один столбец на сотрудника.Это выглядело бы так:
EMPLOYEE_NAME EMPLOYEE_CAR EMPLOYEE_AGE Comments
------------------------------------------------------------------------
Mike Camry 35 Very Good Average Phenomenal
Mark Civic 33 Okay No Comment
Helen Beetle 25 Excellent Hilarious
Какой хороший запрос для этого?Я попробовал следующее безуспешно:
select employee_name
, employee_car
, employee_age
, listagg(feedback_comment_Tx, ' ') within group (order by e.employee_id)
from employee e
join employee_feedback ef ON ef.employee_id = e.employee_id;
Я пропустил незначительную деталь?Заранее спасибо!