2013-12-26 3 views
0

Я пишу запрос для извлечения данных из представления. Представление содержит огромные записи. Я хочу сделать заказ с изображением Я использовал заказ Col_Name DESC. Работает отлично, но это занимает много времени. Оценка времени составляла 59 секунд, , который огромен, поскольку мне нужно построить данные на веб-сайте. Пользователь не может ждать 59 секунд, чтобы увидеть результат. Может ли кто-нибудь предложить мне, как оптимизировать это? Я googled и обнаружил, что индексирование можно использовать, но как использовать его в Views. Мои таблицы уже проиндексированы, но это еще не оптимизирует запрос. Спасибо заранее.Сортировать по: Мой SQL

С уважением,

ответ

0

Добавить индекс на столбце заказ по

ALTER TABLE your_table 
ADD INDEX col_name_idx (col_name desc) 

Обратите внимание, что:

index_col_name спецификация может заканчиваться ASC или DESC. Эти ключевые слова разрешены для будущих расширений для указания восходящего или нисходящего значения индекса. В настоящее время они анализируются, но игнорируются; значения индекса всегда сохраняются в порядке возрастания.

Так что, возможно, в будущем будет использоваться нисходящий индекс. В настоящее время вы должны жить с восходящей.

Если запрос по-прежнему медленный после этого, вы можете увидеть, где запрос требует столько времени с explain. Запустить

explain select ... 

и посмотреть выходные данные для дальнейшего потенциала оптимизации.

+0

У меня уже есть индексирование на моем столе, запрос все еще медленный. –

+0

Затем запустите 'explain'. –

+0

Я использовал Объяснение для анализа. Я проиндексировал все те столбцы, которые, по его словам, требуются. Есть ли способ проверить, действительно ли строки индексируются или нет. –

Смежные вопросы