Просто где в sql - PullRequest
       2

Просто где в sql

0 голосов
/ 07 января 2011

У меня есть таблицы X и Y

Таблица X

a
b
c
d

Таблица Y

a 1   1
a 32  5
b 1   1
b 4   5
c 5   65

Я хочу на выходе c и d, потому что ониt в таблице Y запись со значением 1 1

Как мне ее получить?

Ответы [ 3 ]

3 голосов
/ 07 января 2011

Вы не называете имена столбцов, поэтому я их выдумал!

SELECT col1
FROM tablex
EXCEPT
select col1
FROM tabley
WHERE col2=1 and col3=1

Если вы упростили свой пример и вам нужны дополнительные столбцы из tablex, используйте NOT EXISTS

SELECT tablex.*
FROM   tablex
WHERE  NOT EXISTS (SELECT *
                   FROM   tabley
                   WHERE  col2 = 1
                          AND col3 = 1
                          AND tablex.col1 = tabley.col1)  
1 голос
/ 07 января 2011
SELECT col1
FROM TableX
WHERE col1 
NOT IN (select col1
FROM TableY
WHERE col2=1 and col3=1)
1 голос
/ 07 января 2011

Мне кажется, я понимаю:

SELECT X.column FROM X 
WHERE X.column NOT IN
(SELECT Y.column FROM Y WHERE Y.column2=1 AND Y.column3=1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...