Mysql
 sql >> Baza danych >  >> RDS >> Mysql

MySQL Select Query, gdy chcesz zwrócić grupy x elementów w partiach

MySQL niestety nie obsługuje ROW_NUMBER() funkcja obsługiwana przez większość innych marek baz danych, ale można ją zasymulować za pomocą zmiennej użytkownika.

Poniższe dane są testowane z Twoimi danymi i 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;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Gdzie mogę znaleźć listę kodów błędów SQLException dla MySQL?

  2. codeigniter :pobieranie danych między dwiema datami w mysql za pomocą php

  3. alter table add ... przed `code`?

  4. Czy istnieje funkcja MySQL, taka jak kolumna TIMESTAMP programu SQL Server?

  5. Migracja danych do Firebase z mysql