frost18
@frost18
Программист PHP

Как правильно составить запрос используя оператор UNION?

Есть две таблицы:
1) comment
id | task_id | date
1  |    1    |   1
2  |    1    |   2
3  |    2    |   2

2) deal
id | task_id | date
11 |    1    |   3
21 |    1    |   2

Мне нужно написать запрос который бы объединил записи по полю "task_id" и отсортировал бы по полю "date", и в результате мне нужно понимать какая запись из какой таблицы, т.е мне нужно будет переименовать id или вывести флаг какой нибудь по которому я мог бы это узнать.

Я вот написал такой запрос:
(SELECT C.id, date FROM comment AS C WHERE C.task_id = 1)
UNION
(SELECT D.id, date FROM deal AS D WHERE D.task_id = 1)
ORDER BY date

Который выводит:
id | date
1  |   1
22 |   1
2  |   2
11 |   3

Но у меня не получается переименовть столбцы так что бы было понятно с какой таблицы данные
  • Вопрос задан
  • 168 просмотров
Решения вопроса 1
@ldvldv
(SELECT C.id, date,  'comment' as tname FROM comment AS C WHERE C.task_id = 1)
UNION
(SELECT D.id, date,  'deal' as tname FROM deal AS D WHERE D.task_id = 1)
ORDER BY date
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы