Объединение результатов запроса

#union

#объединение

Вопрос:

Возможно ли вообще объединить два разных результата запроса в один поток результатов?

На моем сайте есть два типа контента, один основан на сети WordPress и содержит ссылку на публикацию, заголовок, название блога, изображение (сгенерированное на основе содержимого записи в блоге), дату.

другой представляет собой набор добавленных пользователем музыкальных ссылок и содержит ссылку на музыку, название музыки, имя исполнителя, изображение (путь к загруженному изображению, сохраненному в базе данных), дату. Список тегов genres (сериализованный массив)

Я попробовал объединение, однако, несмотря на то, что все эти столбцы генерируют одну и ту же категорию содержимого, фактическое содержимое и, следовательно, способ его вывода полностью отличаются.

Что я могу сделать, чтобы объединить все это? Есть ли способ выяснить, из какой таблицы они в данный момент из запроса объединения? Тогда я мог бы использовать оператор if, чтобы решить, как выводить содержимое.

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

1. Да, все возможно, но вы ничего не сказали нам о том, что вы используете.

Ответ №1:

Если вы используете ОБЪЕДИНЕНИЕ, вы могли бы добавить дополнительное поле, которое является «типом» (т. Е. 0 = Блог, 1 = Музыка и т.д.)

Затем во внешней части приложения извлекаются данные из этого поля, а затем с их помощью решается, к какому типу оно относится на самом деле / какие элементы включать.

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

1. Смогу ли я добавить это в сгенерированные запросом или это уже нужно будет добавить в исходные таблицы?

2. Вы можете добавить это в используемый вами запрос. SELECT 1 AS Type, * FROM table1 UNION SELECT 2 AS Type, * FROM table2