Страницы

Поиск по вопросам

среда, 10 июля 2019 г.

Как получить даные из трех таблиц

Есть три таблицы: book, video, audio, которые ничем не объединены. Единственное - у них у всех есть поле created_at. Как мне получить данные из этих трех таблиц и отсортировать по created_at?


Ответ

select a, b, c, create_at from book union all select x, y, z, create_at from video .... order by create_at
После create_at обязательно должно быть выбрано во всех частях запроса. В первом select оно обязано называться именно так, как пишется в order by. Количество и типы колонок всех частей должны совпадать (т.е. тип колонки a в примере должен совпадать с типом колонки x).
Как вариант в сортировке можно указывать порядковый номер колонки в списке выборки, т.е. order by 4

Комментариев нет:

Отправить комментарий