Как объединить результаты двух запросов с упорядочением?
Как вы присоединяетесь к результатам двух запросов, упорядочивая по дате?
SELECT * FROM table1 WHERE tag='1'
SELECT * FROM table2 WHERE tag='3'
table1, table2 имеют одинаковые поля:
id|article|author|tag|date
PS: ПО ПУТЕМ, тег IS workid
Ответ 1
Вы можете использовать UNION ALL для получения строк из обеих таблиц:
SELECT id, article, author, tag, date FROM table1 WHERE tag = '1'
UNION ALL
SELECT id, article, author, tag, date FROM table2 WHERE tag = '3'
ORDER BY date
Вы также можете рассмотреть возможность реструктуризации своей базы данных, чтобы вместо использования двух таблиц вы использовали только одну таблицу с полем, чтобы различать тип каждой строки. Тогда запрос может упростить:
SELECT id, article, author, tag, date
FROM yourtable
WHERE (tag, type) IN (('1','type1'), ('3','type2'))
ORDER BY date
Ответ 2
SELECT *
FROM (SELECT *
FROM table1
UNION
SELECT *
FROM table2) t
ORDER BY t.DATE