Mysql
 sql >> Base de données >  >> RDS >> Mysql

Limiter les résultats de la requête à deux lignes par groupe

Cela pourrait fonctionner, bien que je ne puisse pas dire grand-chose sur ses performances...

SELECT DATE(FROM_UNIXTIME(MyTimestamp)) AS ForDate, *
FROM   MyPostsTable
WHERE  2 >=
(
    SELECT COUNT(*)
    FROM   MyPostsTable AS lookup
    WHERE  DATE(FROM_UNIXTIME(lookup.MyTimestamp)) = DATE(FROM_UNIXTIME(MyPostsTable.MyTimestamp))
    AND    lookup.MyTimeStamp >= MyPostsTable.MyTimestamp
)