Возможно, сделайте это на PHP, а не на MySQL - если вам нужны самые последние n
элементы, извлеките последние n
каждого из ваших новостей, статей, фотографий и событий, и сортируйте в PHP нужен последний n
каждого из них, и вы затем обрежете набор данных в PHP). Это, вероятно, проще, чем объединять их с UNION
, учитывая, что они могут иметь много разных элементов данных.
Я не знаю альтернативы UNION
, которая делает то, что вы хотите, и, надеюсь, эти выборки не будут слишком дорогими. Хотя было бы разумно профилировать это.