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

Node.js API z express i mysql - Pobieranie liczby rekordów, numeru strony, ... i zapewnianie stronicowania

MySQL LIMIT przyjmuje 2 wartości, przesunięcie i licznik wierszy. Manipulowanie nimi to sposób, w jaki możesz oczywiście robić stronicowanie.

np. Jeśli powiedzmy, że każda strona miała 10 rekordów.Page1 =LIMIT 0, 10 Strona2 =LIMIT 10, 10 Strona 3 =LIMIT 20, 10 itp.

IOW:LIMIT (pageNo - 1) * PageSize, PageSize

Teraz jeden problem z używaniem limitu polega na tym, że liczba rekordów dotyczy zestawu wyników, IOW:ograniczone 10 rekordów.

Ale to, co możesz zrobić, to poprosić MySQL o zapisanie, jaki byłby licznik rekordów, gdyby nie zastosowano LIMIT. Możesz to pobrać, poprzedzając kod SQL przedrostkiem SQL_CALC_FOUND_ROWS.

np. SELECT SQL_CALC_FOUND_ROWS * FROM TABLE WHERE something LIMIT 10, 10

Następnie możesz wykonać inne zapytanie, które pobierze tę wartość.

SELECT FOUND_ROWS();



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL alter table modify kolumna nie działa w wierszach z wartościami null

  2. Jak zasiać stół przestawny w Laravel 5.4?

  3. Spring-Hibernacja przy użyciu wielu źródeł danych/bazy danych

  4. Jak przechowywać uuid jako numer?

  5. How-to:Ranking wyników wyszukiwania