sql >> Databasteknik >  >> RDS >> Mysql

Node.js API med express &mysql - Få postantal, sidnummer, ... &tillhandahåll sidnumrering

MySQL LIMIT tar 2 värden, offset och radräkning. Att manipulera dessa är hur du naturligtvis kan göra personsökning.

t.ex. Om säg att varje sida var 10 poster lång.Sida1 =LIMIT 0, 10 Sida2 =LIMIT 10, 10 Sida3 =LIMIT 20, 10 etc.

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

Nu är ett problem med att använda limit att rekordantalet är för resultatuppsättningen, IOW:de begränsade 10 posterna.

Men vad du kan göra är att be MySQL att lagra vad rekordantalet skulle ha varit om LIMIT inte tillämpats. Du kan hämta detta genom att prefixa SQL med SQL_CALC_FOUND_ROWS.

t.ex. SELECT SQL_CALC_FOUND_ROWS * FROM TABLE WHERE something LIMIT 10, 10

Du kan sedan göra en annan fråga som hämtar detta värde.

SELECT FOUND_ROWS();



  1. hur man kör php-skript från batchfil

  2. php-kod för att testa pdo är tillgänglig?

  3. Hur väljer man slumpmässiga rader från tabellen med ett exakt antal rader?

  4. Kryptering av databassäkerhetskopiering – bästa praxis