sql >> Database >  >> RDS >> Mysql

mysql selecteer verschillende maar laatste rij

Je kunt het doen met een vakbond

(SELECT 
    site,date,score 
FROM
    `table`
WHERE 
    site = 'a'
ORDER BY date DESC
LIMIT 0,1)
UNION
(SELECT 
    site,date,score 
FROM
    `table`
WHERE 
    site = 'b'
ORDER BY date DESC
LIMIT 0,1)

Een beetje ingewikkelder als je geen UNION wilt schrijven

SELECT 
    t.site, t.date, t.score
FROM 
    `table` t
    JOIN (
       SELECT ti.site,MAX(ti.date) AS dt
       FROM `table` ti
       GROUP BY ti.site
    ) t2 ON t2.site = t.site and t2.dt = t.date



  1. Select-verklaringen schrijven

  2. Een Enum-veld wijzigen met Alembic

  3. Postgres:moet men indexen maken voor of na het vullen van tabellen

  4. Recursieve SQL en informatie op verschillende niveaus