2012-03-28 5 views
0

У меня было приложение для комментариев на моем веб-сайте. Комментарии будут храниться в таблице MySQL. таблица следующим образомОптимизируйте запрос базы данных MySQL

id | Comment | user | created_date 
------------------------------------------------------ 
12 | comment he | 1245 | 2012-03-30 12:15:00 
------------------------------------------------------ 

Мне нужно запустить запрос для перечисления всех комментариев по истечении определенного времени. то есть .. запрос типа этого

SELECT * FROM comments WHERE created_date > "2012-03-29 12:15:00" ORDER BY created_date DESC 

Its работает нормально .. Мой вопрос, если я получил запись в 1-2 Lakh в этой таблице, этот запрос является достаточным для этой цели? или для выполнения этого запроса потребуется время? В большинстве случаев я должен показать последние 2 дня данные + периодически (интервал 10 минут), проверка на наличие обновлений с помощью AJAX из этой таблицы ...

Пожалуйста, помогите Спасибо

+1

Есть ли указатель на «created_date» в таблице? – Tobi

+0

В настоящее время я использую CURRENT_TIMESTAMP в поле created_date – ramesh

ответ

3

Место индекс в CREATED_DATE поле. Это повысит производительность много ...

Ссылки: MySQL: http://dev.mysql.com/doc/refman/5.0/en/create-index.html
Использование SQLyog: http://www.weberdev.com/ViewArticle/Managing-Foreign-Key-Relationships-In-MySQL-Using-SQLyog
WIKI: http://wiki.phpmyadmin.net/pma/primary_key

+0

, можете ли вы объяснить, как создать индекс? – ramesh

+2

http://bit.ly/GZpwME – biziclop

2

Вы должны добавить индекс "CREATED_DATE", если еще нет. Более подробно вы можете использовать «объяснять», чтобы оптимизировать ваш запрос. вот несколько простых способов для optimize queries.

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