Недавно я узнал, что MySQL имеет offset
функцию. Я пытался найти документацию о результатах смещения или разнице между смещением и вариантом предела, но я не могу найти то, что я ищу.
Допустим, у меня есть 10.000 строк в таблице, и я хочу 25 результатов из строки 1.000. Насколько я дошел, я мог сделать оба, чтобы получить тот же результат:
SELECT id,name,description FROM tablename LIMIT 1000,25
SELECT id,name,description FROM tablename LIMIT 25 OFFSET 1000
Что я хотел бы знать, так это разницу между ними.
- Это действительно делает то же самое или мое понимание неверно?
- Один медленнее / быстрее в больших таблицах
- Изменяется ли результат смещения, когда я делаю
WHERE column=1
(скажем, столбец имеет> 100 различных значений) - Меняется ли результат смещения, когда я делаю
ORDER BY column ASC
(если он имеет случайные значения)
Если это «глупый» вопрос и кто-то знает какую-либо документацию, освещающую эту тему, пожалуйста, добавьте их в ответы.
Я чувствую, что смещение пропускает первые X строк, найденных в базе данных, без учета сортировки и где.