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. Надеюсь, это поможет!

Другие вопросы по тегам