Оптимизировать запрос к базе данных MySQL - PullRequest
0 голосов
/ 28 марта 2012

У меня было приложение для комментирования на моем веб-сайте.Комментарии будут храниться в таблице 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

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

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

Ответы [ 2 ]

3 голосов
/ 28 марта 2012

Поместить индекс в поле create_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

2 голосов
/ 28 марта 2012

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

...