Mysql
 sql >> Baza danych >  >> RDS >> Mysql

mysql LEFT join dla maksymalnej wartości prawej tabeli

musisz zastosować max ( ID komentarza ) na każdym zdjęciu (zakładając, że ID komentarza jest automatycznie zwiększany, a zatem zawsze jest to najnowsze dodane do tabeli)

select
      p.*,
      tbc.Comment
   from
      tb_photos p
         LEFT JOIN ( select c.photos_id, 
                            max( c.id ) lastCommentPerPhoto
                        from
                           tb_comments c
                        group by
                           c.photos_id
                        order by
                           c.Photos_id ) LastPhotoComment
            on p.id = LastPhotoComment.photos_id
            LEFT JOIN tb_comments tbc
               on LastPhotoComment.LastCommentPerPhoto = tbc.id


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mocowanie wstawiaj zapytanie do bazy danych MySQL za pomocą Moq

  2. Używanie Mysql w linii poleceń w osx - nie znaleziono polecenia?

  3. MySQL pobiera datę sprzed n dni jako znacznik czasu

  4. MySQL - Konwertuj MM/DD/RR na znacznik czasu uniksowy

  5. mysql_connect() Różnica między hostem lokalnym a 127.0.0.1