К списку форумов К списку вопросов
[SQL]::Выбрать записи, не имеющие ответа
Cool
04.06.2004 - 00:50
Столкнулся с траблой в составлении запроса. Есть 2 таблицы. Грубо говоря, сообщения (id,message) коменты(id_message,comment) можно провести аналогию с гостевой. Вобщем мне надо выбрать все записи из сообщений, к которым нет ни одного комента. Вложенные запросы не использовать.
Wsc
1 - 04.06.2004 - 07:30
Почитай про LEFT JOIN
Делаешь выборку с 2-х таблиц через LEFT JOIN, в рез-те получишь объединение с 2-х таблиц и уточнение запроса для записей без комментов сделаешь через WHERE COMMENT IS NULL
Уверенный
2 - 04.06.2004 - 09:35
И еще наверно не просто join, а outer join - иначе не выберет записи, у которых нет ответов вообще.
Cool
3 - 04.06.2004 - 11:11
Понял, спасибо.
Уверенный, не, LEFT JOIN сработал нормально
Mexoc
4 - 04.06.2004 - 15:36
У меня тож проблема с выборкой. Нужны записи, одно из полей к-х начинается на _цифру_! Вариант ... like 'ч%' (где x{0..9} ) не катит. А как тогда?
Уверенный
5 - 04.06.2004 - 15:53
База какая?
Mexoc
6 - 04.06.2004 - 18:17
MySQL
Mexoc
7 - 04.06.2004 - 18:19
SELECT name FROM orgs WHERE name LIKE 'x%';
не работает
Уверенный
8 - 04.06.2004 - 19:09
Почитай в доках про регулярные выражения в mysql
Mexoc
9 - 04.06.2004 - 19:58
Почитал мануал. Но все равно нифига не понял как их использовать. Просто писать например
SELECT name FROM orgs WHERE name LIKE "[0-9].*";
опять не работает...
SELECT name FROM orgs WHERE name LIKE REGEXP "[0-9].*";
ошибка...
Уверенный
10 - 04.06.2004 - 20:34
Интересно, в каком мануале ты увидел "LIKE REGEXP"?
 
select name from orgs where name rlike '^[[:digit:]]';
select name from orgs where name regexp '^[[:digit:]]';
http://www.cs.ait.ac.th/laboratory/database/manual/manual_Regexp.shtml
Mexoc
11 - 05.06.2004 - 00:21
Reel bik 10x, помогло:)

К списку вопросов на форуме Веб-дизайн

>>