Перейти к контенту

Помогите оптимизировать запрос.


Рекомендуемые сообщения

Необходимо проверить, есть ли в ibf_posts.ip_address и ibf_members.ip_address, некое значение айпиша.

 

Соответсвенно делаю запрос:

SELECT id FROM ibf_members, ibf_posts WHERE ibf_members.ip_address='{$this->ipsclass->input['IP_ADDRESS']}' or ibf_posts.ip_address='{$this->ipsclass->input['IP_ADDRESS']}' LIMIT 1 ;

 

Но в результате такого запроса, всё начинает неимоверно лагать, подскажите - как лучше сделать?

Изменено пользователем Destruction
Ссылка на комментарий
Поделиться на других сайтах

Необходимо проверить, есть ли в ibf_posts.ip_address и ibf_members.ip_address, некое значение айпиша.

 

Соответсвенно делаю запрос:

SELECT id FROM ibf_members, ibf_posts WHERE ibf_members.ip_address='{$this->ipsclass->input['IP_ADDRESS']}' or ibf_posts.ip_address='{$this->ipsclass->input['IP_ADDRESS']}' LIMIT 1 ;

 

Но в результате такого запроса, всё начинает неимоверно лагать, подскажите - как лучше сделать?

 

Добавлю к этому что форум на котором это выполняется работает на отдельном сервере, без какой-либо дополнительной нагрузки. Сообщений более 600 тысяч.

Ссылка на комментарий
Поделиться на других сайтах

У тебя декартово перемножение.

Чтобы выбирать из 2-х таблиц, нужно чтобы обе таблицы как-то пересекались друг с другом. Хотя бы по индексу, в идеале - по уникальному ключу.

А в твоём случае тебе нужно сделать 2 запроса, ну а насчёт того что нужно ставить на поле IP_ADDRESS индекс, я это уже говорил давно в "косяках"

Ссылка на комментарий
Поделиться на других сайтах

тут даже limit не спасет.

limit вообще не панацея, никогда! =)

Потому что всегда делается в начале сам запрос. В данном случае

декартово перемножение

а уж потом накладываются рамки.

 

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

Ссылка на комментарий
Поделиться на других сайтах

Присоединиться к обсуждению

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

Гость
Ответить в этой теме...

×   Вы вставили отформатированный текст.   Удалить форматирование

  Допустимо не более 75 смайлов.

×   Ваша ссылка была автоматически заменена на медиа-контент.   Отображать как ссылку

×   Ваши публикации восстановлены.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Зарузка...
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.