sql >> Database >  >> RDS >> Mysql

mysql:Hoe INNER JOIN aan een tafel te doen, maar de deelname beperken tot 1 resultaat met de hoogste stem of telling?

SELECT a.*, b.*
  FROM Items a
       LEFT JOIN Votes b on a.item_id = b.item_id
                         and b.total_yes = (select max(total_yes) 
                                              from Votes v 
                         where v.item_id = a.item_id)
ORDER BY a.post_date DESC, b.total_yes DESC

N.B.:als je voor een item 2 antwoorden hebt met hetzelfde totaal_ja =max, dan heb je 2 rijen voor dat item.



  1. PHP Order Capture Portal

  2. Aliasing veldnamen in SQLAlchemy-model of onderliggende SQL-tabel

  3. Is het mogelijk om een ​​afbeelding op te slaan in de oracle 11g express edition?

  4. Voorkeur MySQL-tools