Mysql
 sql >> Database >  >> RDS >> Mysql

MySQL Select Query quando si desidera restituire gruppi di elementi x in batch

MySQL sfortunatamente non supporta il ROW_NUMBER() funzione che supporta la maggior parte delle altre marche di database, ma puoi simularla con una variabile utente.

Quanto segue viene testato con i tuoi dati e MySQL 5.1.49:

SET @rownum := 0;
SET @ip := null;

SELECT * FROM (
    SELECT IF(@ip=ip,@rownum:[email protected]+1,@rownum:=0) AS rownum, @ip:=ip AS ip, oid
    FROM test ORDER BY ip, oid
) AS t
ORDER BY FLOOR(rownum/10), ip, oid;