Forum Webscript.Ru
Общие => Базы данных => Тема начата: от 02 Июля 2002, 15:33:33
-
Плс. как написать в MySql запрос:
SELECT id,ot,komu,message,type FROM chat WHERE type=\'msg\' AND ot NOT IN(SELECT ignore FROM ignor WHERE inick=\'Nick\') ORDER BY id;
Ведь мискл не поддерживает вложенные запросы?
-
Unregistered
Как это?
MySQL версии 4.0 поддерживает вложенные подзапросы
-
JOIN используй.
AlieN
Ага только она пока в альфе :)
Расслабляемся. Плюс еще надо учесть, что далеко не все хостеры побегут ее ставить сразу после релиза, так что на нее расчитывать пока не надо.
-
MySQL версии 4.0 поддерживает вложенные подзапросы
не поддерживает 4.0, это только в 4.1 будет ...
так что как сказал ThE0ReTiC take a look at JOIN :)
-
Значит решили, таки, не поддерживает, а можно с Join мне черкнуть как это будет выглядеть? сам пыталься, ничего не получилось, я с ним раньше не работал, плс.
-
попытка, вернее направление
SELECT chat.* FROM chat, ignor WHERE chat.ot = ignor.ignore AND type=\'msg\'
правда выберет(если вообще выберет) наоборот
а чтобы...... надо IS NULL куда-то
SELECT chat.* FROM chat LEFT JOIN ignor ON chat.ot=ignor.ignore WHERE ignor.ignore IS NULL
______________________________________
Я научу Вас всему тому, что не умею сам!!!
-
Если по второму, то выбирает все из первой таблицы и то, что нужно по второму разу, т.е. выбирает больше чем нужно
-
ignor.ignore должен быть объявлен как NOT NULL