2013-07-30 2 views
-1

Мне не хватает номеров acccount из таблицы t01, которые находятся в таблице q04.Проверка отсутствующих номеров счетов из одной из таблиц

Как отобразить недостающие номера учетных записей. Я только хочу, номер партии 270864 от Т01 и importid 680 от Q04

t01 табличные данные

account numbet1 2 3 7 8 

Batch numbers 270864 

Q04 табличные данные

account numbers 1 2 3 4 5 6 7 8 

ImpoortID 680 

Вот код, который я пытаюсь не использовать с не Результаты;

SELECT * 
FROM [DS_PROD].[dbo].[T01_TransactionMaster] t01 
WHERE t01.BatchNumber = '270864' AND t01.AccountNumber 
NOT EXISTS (SELECT * FROM [DS_PROD].[dbo].[Q04_ImportDetails] q04           
      WHERE q04.ImportId = 680) 
+0

как я могу получить все столбцы для отображения из обеих таблиц. Он показывает таблицу q04, а не столбцы t01. – user1667160

ответ

0

Ваш пункт WHERE выключен. Вы должны делать t01.AccountNumber NOT IN вместо NOT EXISTS.

Также на основе данных, которые вы предоставили, вы должны запрашивать таблицу Q04, для которой AccountNumbers НЕ В таблице T01. А не наоборот. Все учетные записи в T01 находятся в Q04 (1, 2, 3, 7, 8). Вы хотите, чтобы запрос возврата (4, 5, 6)

SELECT * 
FROM [DS_PROD].[dbo].[Q04_ImportDetails] q04 
WHERE Q04.ImportId = 680 AND q04.AccountNumber NOT IN 
    (SELECT AccountNumber 
    FROM [DS_PROD].[dbo].[T01_TransactionMaster] t01 
    WHERE t01.BatchNumber = '270864') 
+0

как мне получить все столбцы для отображения из обеих таблиц. Он показывает таблицу q04, а не столбцы t01 - user1667160 только что редактирует – user1667160

0

Попробуйте

SELECT * 
FROM [DS_PROD].[dbo].[T01_TransactionMaster] t01 
WHERE t01.BatchNumber = '270864' AND t01.AccountNumber 
NOT EXISTS (SELECT **ACCNTNUMBER** FROM [DS_PROD].[dbo].[Q04_ImportDetails]  q04           
     WHERE q04.ImportId = 680) 
Смежные вопросы