Rất tiếc, MySQL không hỗ trợ ROW_NUMBER()
chức năng mà hầu hết các thương hiệu cơ sở dữ liệu khác hỗ trợ, nhưng bạn có thể mô phỏng nó bằng một biến người dùng.
Phần sau được kiểm tra với dữ liệu của bạn và 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;