Rational Clearquest- разница между двумя запросами
Я пытаюсь использовать ключевое слово Except для фильтрации необычных записей между двумя выводами запроса путем изменения запроса (разработанного в конструкторе запросов) в панели редактора sql. Мне известно, что если вы измените запрос, разработанный в конструкторе запросов, с помощью панели редактора sql, он снова не может быть изменен в конструкторе запросов. Все, что мне нужно, - это то, что у меня есть выходные данные запроса 1 и выходные данные запроса 2, и я хочу найти только записи, которых нет в выходных данных запроса 2 (запрос 1 минус / кроме запроса 2). Любая помощь приветствуется. Благодарю.
1 ответ
Там будет множество способов решить эту проблему. Если у вас уже есть два сценария, то я думаю, что самый простой способ ниже.
Вы можете поместить Query 1 и 2 в их собственные CTE, а затем соединить их вместе по общему идентификатору, где идентификатор Query 2 равен NULL, например, так:
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
Это вернет только записи, присутствующие в Query 1, но не Query 2. Надеюсь, это поможет!