Ecco il mio problema: ho 3 tabelle MySql che rappresentano: foto un post utente, video un post utente, commenti un post utente e ho bisogno di visualizzare il 10 (20, 30, 40 ...) attività più recenti dell'utente. Per esempio nella foto tabella può essere composto da:Attività recenti dell'utente - PHP MySql
user_id | photo_id | photo_path | photo_name | date_added 5 | 18 | /photos | pht_18.png | 2009-02-12 5 | 21 | /photos | pht_21.png | 2009-02-15 5 | 29 | /photos | pht_29.png | 2009-03-30
tavolo video
user_id | video_id | video_url | date_added 5 | 36 | youtube.com/... | 2009-01-09 5 | 48 | youtube.com/... | 2009-02-18 5 | 90 | youtube.com/... | 2009-03-19
tavolo commenti
user_id | comment_id | comment | date_added 5 | 6 | hi! | 2009-02-11 5 | 11 | great photo | 2009-02-13 5 | 19 | nice shot! | 2009-03-28
Come si può vedere i 3 tavoli hanno diverso numero di attributi , quindi, come posso fare l'unione? e mentre recupera il risultato della query, come posso capire a quale tabella appartiene?
Così nella pagina del profilo utente Mi piacerebbe mostrare le sue recenti attività, naturalmente, ordinati per data DESC questo modo:
2009-09-01: user posted a video 2009-11-02: user posted a comment 2009-12-02: user posted a photo 2009-13-02: user posted a comment 2009-15-02: user posted a photo 2009-18-02: user posted a video 2009-19-03: user posted a video 2009-28-03: user posted a comment 2009-30-03: user posted a photo
Qualcuno mi può aiutare per favore?
Probabilmente dovresti modificare la domanda per mostrare che le diverse tabelle hanno alcune colonne univoche, come da commento qui sotto. –