полям, такая последовательность действий нужна для корректной пагинации, т.е. мы хотим запрашивать данные батчами, limit/offset не подходит, поэтому делаем условие по полям, чтобы обозначить, с какого места читать данные и хотелось бы, чтобы данные в разных запросах не теряли порядок, иначе начнется хаос
если нет order by, но таблица отсортирована, всегда ли порядок строкв результате будет одинаков?
Например есть таблица t
a | b
1 | 1
1 | 2
1 | 3
2 | 1
2 | 2
(table with ORDER BY a, b)
И запрос
SELECT a, b
FROM t
WHERE (a > 1) OR (a = 1 AND b > 1);
Всегда ли порядок строк результата будет
1 | 2
1 | 3
2 | 1
2 | 2
там же несколько тредов читают несколько партов и мерджат результат в памяти. Без сортировки не получится получить стабильный результат. А чем не угодил limit/offset?
Обсуждают сегодня