запрос вешающий MySQL

Ответить
Аватара пользователя
Vlad Drakula

запрос вешающий MySQL

Сообщение Vlad Drakula »

есть запрос:





PHP код:

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

$mails = $DB_site->query(" SELECT user.email, user.timezoneoffset

                                         FROM subscribethread, user, usergroup, moderator

                                        WHERE ( ( moderator.forumid IN (".addslashes($foruminfo['parentlist']).") AND moderator.userid = user.userid AND moderator.permissions & 32768)

                                                OR ( subscribethread.threadid = ".$threadinfo['threadid']."

                                                AND subscribethread.emailupdate IN (1, 4)

                                                AND subscribethread.userid = user.userid

                                                AND usergroup.usergroupid = user.usergroupid

                                                AND user.usergroupid  3

                                                AND (usergroup.genericoptions & ".ISBANNEDGROUP.") = 0))"); 






может кто объяснить почему это происходит?
Аватара пользователя
mar

Re: запрос вешающий MySQL

Сообщение mar »

Vlad Drakula

а таблицы и связи можно показать?

и сам SQL-запрос без ПХП обрамления (с какой-нибудь конкретной цифирью)?

и что explain говорит, если прямо в базе (а не в ПХП) этот запрос ручками задать?
Аватара пользователя
Vlad Drakula

Re: запрос вешающий MySQL

Сообщение Vlad Drakula »

mar

1) $foruminfo['parentlist'] = 26

2) не... неработает...

3) честно говоря я так и не научился explain Изображение
Аватара пользователя
Stek

Re: запрос вешающий MySQL

Сообщение Stek »

Индексы на полях связки есть ? Limit 10 сделай, не дублируется ли записи из за отсутствия какой либо связки
Аватара пользователя
vadimiron

Re: запрос вешающий MySQL

Сообщение vadimiron »

Цитата:



Индексы на полях связки есть ? Limit 10 сделай, не дублируется ли записи из за отсутствия какой либо связки



Да, наш профессор говорил, что если не правильно организовать связи между таблицами базы данных, то можно базу в цикл загнать

Можно попробывать с меньшим количеством условий в WHERE: и таким образом методом исключения посмотреть, что приводит к неудаче
Аватара пользователя
mar

Re: запрос вешающий MySQL

Сообщение mar »

я боюсь показаться навязчивой, но explain для того и существует, xnj,s именно все это и показывать Изображение (правда не знаю, что он в случае бесконечного цикла выдаст - надо документацию посмотреть)
Ответить

Вернуться в «Вебмастеру»