první sto
SELECT * FROM <table_name> ORDER BY id ASC LIMIT 0, 100
další sto
SELECT * FROM <table_name> ORDER BY id ASC LIMIT 100, 100
jste velmi pozorní při zadávání objednávky do
VYSVĚTLENÍ LIMITNÍHO PROHLÁŠENÍ: LIMIT příkaz NENÍ WHERE doložka. Nevybírá podle id ani ve skutečnosti podle žádných kritérií (tam where klauzule to dělá) Místo toho limit klauzule jednoduše zajistí, že vám bude vrácena část block výsledků, které jsou podmnožinou „všeho“. Proto je důležité zmínit order by pokaždé, takže každý další hovor vám poskytne správný kus datového bloku v pořadí a můžete přes ně „další“, „další“, „další“
EG:pro neuspořádanou tabulku this_table :
+-------+-------------+
| id | value |
+-------+-------------+
| 1 | bob |
| 12 | fish |
| 112 | pink |
| 2 | cat |
| 8 | dog |
| 56 | blue |
| 88 | grey |
| 87 | red |
+-------+-------------+
výběry se vrátí následovně:
SELECT * FROM <this_table> ORDER BY id ASC LIMIT 0,5
+-------+-------------+
| id | value |
+-------+-------------+
| 1 | bob |
| 2 | cat |
| 8 | dog |
| 12 | fish |
| 56 | blue |
+-------+-------------+
a
SELECT * FROM <this_table> ORDER BY id ASC LIMIT 5,5
+-------+-------------+
| id | value |
+-------+-------------+
| 87 | red |
| 88 | grey |
| 112 | pink |
+-------+-------------+
všimněte si, že chybí řádky 9 a 10, je to záměrné a ukazuje to, že MySQL funguje tak, jak bylo zamýšleno
mimochodem byste se měli také podívat na přidání indexu na id tím se MASIVNĚ zvýší rychlost těchto voleb
ALTER TABLE <table_name> ADD INDEX `id` (`id`)