sql >> Database >  >> RDS >> Mysql

mysql LEFT join voor de maximale waarde van de rechtertabel

je moet de max (commentaar-ID) op elke foto toepassen (ervan uitgaande dat de opmerking-ID automatisch wordt verhoogd en dus altijd de meest recente aan de tabel is toegevoegd)

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. JOIN vs. WHERE:Waarom vertonen twee zoekopdrachten die identieke resultaten opleveren 3-4 ordes van grootte prestatieverschil?

  2. Verbinding met mysql met netbeans voor jsp

  3. Joins gebruiken om gegevens uit verschillende tabellen te combineren in PostgreSQL

  4. Locatie van het relevante tnsnames.ora-bestand bepalen