sql >> Base de Datos >  >> RDS >> Mysql

mysql:encuentra filas con valores repetidos más condición

Deberías estar buscando esto:

Tabla pl1 tiene un player name coincidente y date que ha jugado football , pl2 incluye el conteo, pl3 obtiene todos aquellos jugadores que han jugado football y más juegos en una fecha en particular y luego obtienes los datos coincidentes de pl4

SELECT 
    pl4.*
FROM
    player pl4
        JOIN
    (SELECT 
        pl2.name, pl2.date, COUNT(pl2.name) numberofgames
    FROM
        player pl2
    JOIN (SELECT 
        date, name
    FROM
        player
    WHERE
        sport = 'football') pl1 ON (pl2.name = pl1.name
        AND pl2.date = pl1.date)
    GROUP BY pl2.name , pl2.date
    HAVING numberofgames > 1) pl3 ON (pl3.name = pl4.name
        AND pl3.date = pl4.date)