У меня есть три класса предметов, которые я хочу показать на стене пользователя: рейтинги, комментарии и обновления. Эти три совершенно разные сущности, но поскольку все они могут появляться на стене пользователя, я просто называю их "wallitem". У всех есть свойство timestamp, которое представляет дату, когда они были созданы.
Я хочу разрешить пользователям просматривать страницы, упорядоченные по метке времени. Например: последние 10 Wallitems. Или wallitems 20-30. Есть ли MySQL Query, который дает мне последние 10 "wallitems", даже если все разные объекты имеют разные столбцы?
Я мог бы себе представить, возвращая список элементов, где каждый элемент имеет все свойства всех различных сущностей, дополнительное свойство, определяющее тип (например, «рейтинг»), если это на самом деле рейтинг, все остальные свойства просто нулевые. Я хотел бы использовать такой словарь в моем php-коде:
foreach ($wallItemArray as $item) {
if ($item['type'] == "rating") {
$rating = $item; // use it as normal "rating"-entity
} else if ($item['type'] == "comment") {
$comment = $item; // use it as normal "comment"
}
// and so on for all different entities that could represent a wallitem in this context
}