Mysql оптимизирует запрос для подкачкиPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Mysql оптимизирует запрос для подкачки

Сообщение Anonymous »

Пожалуйста, может ли кто-нибудь помочь мне расширить этот запрос?
Я не могу найти для него решение.

Код: Выделить всё

SELECT *,p.cat_id, cat_name FROM    (
SELECT  cat_id
FROM    categories
ORDER BY cat_id
LIMIT 700000, 10
) o
JOIN    categories p
ON      p.cat_id = o.cat_id
ORDER BY p.cat_id
Это очень быстро для таблицы с 800 000 записями, но мне нужно отсортировать данные с помощью предложения order by и где тоже - для разбивки по страницам . Если я использую порядок, это будет очень медленно или результат будет упорядочен неправильно>

Код: Выделить всё

SELECT *, p.cat_id, cat_name FROM(
SELECT  cat_id
FROM    categories
LIMIT 700000, 10
) o JOIN    categories p
ON      p.cat_id = o.cat_id
ORDER BY p.cat_name

page 1
LIMIT 700000,5:
id      name
12525525   car
15155151   carpet
1521512i   zone

page 2
LIMIT 700005,5
id        name
12525525   carefull
15155151   excellent
52151222   drive
Мне нужен результат:

Код: Выделить всё

page 1 car
carpet
drive
excellent ... etc.

f.e. , this is very slow ofcourse >
SELECT *, p.cat_id, cat_name
FROM    (
SELECT  cat_id
FROM    categories
**ORDER BY cat_name**
LIMIT 700000, 10
) o
JOIN    categories p
ON      p.cat_id = o.cat_id
ORDER BY p.cat_name
первичный ключ cat_id, автоинкремент
У меня есть индексы по полям в таблице

Большое спасибо за помощь или какие-нибудь идеи

Подробнее здесь: https://stackoverflow.com/questions/125 ... for-paging
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»