Общая группа из двух избранных, sql server - PullRequest
2 голосов
/ 24 января 2012

Как объединить, объединить или CTE два выбора, чтобы я получал только результаты, которые существуют в обоих

SELECT DISTINCT userid FROM ads WHERE status <> 'BASIC'

Скажем, набор результатов: 1, 2, 3, 4, 5

SELECT DISTINCT userid FROM ads WHERE state = 'Alabama'

Допустим, набор результатов равен 2, 4, 5, 8, 9

Тогда я хочу 2, 4 и 5

1 Ответ

3 голосов
/ 24 января 2012

Это то, что делает INTERSECT.

Я удалил DISTINCT из запросов, как это подразумевается INTERSECT в SQL Server (он не реализует INTERSECT ALL)

SELECT userid
FROM   ads
WHERE  status <> 'BASIC'
INTERSECT
SELECT userid
FROM   ads
WHERE  state = 'Alabama'  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...