Есть три таблицы: 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
Комментариев нет:
Отправить комментарий