Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Letzte Aktivitäten des Benutzers - PHP MySQL

Eine MySQL UNION-Abfrage könnte hier funktionieren:

(SELECT `user_id`, `date_added`, 'photo' AS `type` FROM `photos` WHERE `user_id` = uid) UNION
 (SELECT `user_id`, `date_added`, 'video' AS `type` FROM `videos` WHERE `user_id` = uid) UNION
 (SELECT `user_id`, `date_added`, 'comment' AS `type` FROM `comments` WHERE `user_id` = uid)
 ORDER BY `date_added` DESC;

Dann würden Sie am Ende eine Ergebnismenge wie

erhalten
user_id | date_added | type
    5   | 2009-01-03 | photo
    5   | 2008-12-07 | video
    5   | 2008-11-19 | comment

und so weiter. (Eigentlich können Sie user_id lassen aus dem SELECT, wenn Sie möchten, natürlich)