2013-12-12 5 views
0

Я пытаюсь использовать ключевое слово Except для фильтрации необычных записей между двумя выводами запроса путем изменения запроса (разработанного в дизайнере запросов) в области редактора sql. Я знаю, что если вы измените запрос, спроектированный в конструкторе запросов, используя панель редактора sql, он снова не может быть изменен в конструкторе запросов. Все, что мне нужно, это то, что у меня есть вывод запроса 1 и запрос 2, и я хочу найти только записи, которых нет в выводе запроса 2 (запрос 1 минус/кроме query2). Любая помощь приветствуется. Благодарю.Rational Clearquest-Разница между двумя запросами

+0

Звучит как моя ситуация с приводом. Если бы это был я, я бы написал свой собственный sql и обойтись без конструктора запросов. –

+0

Спасибо за ваш быстрый trunaround. Проблема для меня, я не могу подключиться к базе данных через sql, но у меня есть доступ к запросу на изменение в панели редактора sql и сохранению. Это на самом деле не поддерживает EXCEPT/MINUS .. он говорит, что есть синтаксическая ошибка рядом с ключевым словом Except ... Я мог бы делать только OR/AND между двумя запросами ... но я хочу получать необычные записи .. – user2705120

ответ

0

Будут множество способов решить эту проблему. Если у вас уже есть два сценария, то я думаю, что самый простой способ ниже.

Вы можете поместить запрос 1 и 2 в свои КТР, а затем соединить их вместе на общей ID, где Query 2 ID имеет нулевое значение, например, так:

With Query_1_CTE as (
--Insert Query 1 script here 
) 

, Query_2_CTE as (
--Insert Query 2 script here 
) 

Select --list out query 1 fields here 

From Query_1_CTE Q1 
    Left Outer Join Query_2_CTE Q2 
     on Q1.ID = Q2.ID 

Where Q2.ID is null 

Это будет возвращать только записи, присутствующие в запросе 1, но нет запроса 2. Надеюсь, это поможет!

Смежные вопросы