![]() |
Модераторы: LSD |
![]() ![]() ![]() |
|
Wiedzmin |
|
||||||
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 17.1.2006 Репутация: нет Всего: нет |
Есть например таблица a с полем x, таблица b с полем y и связывающая таблица c с полями x и y. Как найти такие x из a, которые в c имеют все соответствия y из b?
Двумя запросами можно сделать, например, так: 1. Такие x, пары x и y которых нет в таблице c:
2. Такие x из a, у которых нету недостающих пар (которые записаны в R)
Одним запросом пробовал так (сначала выбираем как в первом из предыдущего, затем правым присоединением фильтруем те, что нужны)
Но не получилось... Вообще что происходит тогда при этом запросе? Просьба вложенными запросами не предлагать ), хочется реализовать джойнами с условиями IS NULL ). Это сообщение отредактировал(а) Wiedzmin - 14.10.2006, 18:12 |
||||||
|
|||||||
boevik |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1452 Регистрация: 31.5.2004 Где: Израиль Репутация: 6 Всего: 35 |
Простой INNER JOIN между тремя таблицами не подойдет?
Почучишь все записи у которых есть соотвествие во всех таблицах
-------------------- Никогда не говори никогда |
|||
|
||||
Wiedzmin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 17.1.2006 Репутация: нет Всего: нет |
Соответствие то есть, но не такое...
Например, надо найти таких пользователей, которые постили во всех форумах (т.е. если не нашлось поста хоть в одном форуме такой юзер не катит). Не сделаешь же это просто двумя INNER JOIN... Это сообщение отредактировал(а) Wiedzmin - 14.10.2006, 19:50 |
|||
|
||||
ZeeLax |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 4388 Регистрация: 20.8.2006 Где: Алма-Ата Репутация: нет Всего: 88 |
Киньте структурку, пожалуйста. -------------------- Utility is when you have one telephone, luxury is when you have two, opulence is when you have three — and paradise is when you have none. — Doug Larson |
|||
|
||||
Wiedzmin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 17.1.2006 Репутация: нет Всего: нет |
ZeeLax, самую простую структуру здесь написал (таблицы a, b, c), тот запрос про форумы это для примера, чтобы яснее общая задача была
|
|||
|
||||
Shiny |
|
|||
![]() разбойница ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 18.9.2006 Где: Киев Репутация: нет Всего: 6 |
|
|||
|
||||
Wiedzmin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 17.1.2006 Репутация: нет Всего: нет |
Shiny, например a такая:
х 1 2 b: y 3 4 c x y 1 3 1 4 2 4 С запросом который мы ищем должен быть рядок со значением "1" (2 здесь не подходит, так как в таблице с нету строки x=2,y=3). А запрос указаный тобой выводит x y 1 3 1 4 1 NULL 2 NULL 2 NULL 2 4 |
|||
|
||||
Shiny |
|
|||
![]() разбойница ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 18.9.2006 Где: Киев Репутация: нет Всего: 6 |
А ты проверил???
Я уже сама усомнилась, специально новую базу создала, проверила - мой запрос работает абсолютно правильно Мои результаты: x y 1 3 1 4 2 4 |
|||
|
||||
Wiedzmin |
|
|||
Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 17.1.2006 Репутация: нет Всего: нет |
Результат должен быть:
x 1 |
|||
|
||||
Shiny |
|
|||
![]() разбойница ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 18.9.2006 Где: Киев Репутация: нет Всего: 6 |
Извини, не поняла задачу - мой провтык.
Немножко освобожусь - попробую поиграться с нужным запросом. Это сообщение отредактировал(а) Shiny - 17.10.2006, 10:51 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Общие вопросы по базам данных" | |
|
Данный форум предназначен для обсуждения вопросов о базах данных не попадающих под тематику других форумов:
Данный форум не предназначен для:
Если вы не соблюдаете эти правила, не удивляйтесь потом не найдя свою тему/сообщение.
Полезные советы: Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, LSD, Zloxa. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | СУБД, общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |