Как проверить повторяющееся значение

#sql

#sql

Вопрос:

У меня есть две таблицы:

Table Tab1 ( Col1, Col2 )
Table Tab2 ( Col1, Col2 )

Я хочу проверить в таблице, Tab2 Col2 есть ли какое-либо одинаковое значение с таблицей Tab1 в столбце Col2 .

Как это сделать?

Комментарии:

1. Какой продукт базы данных и версию или мы должны предполагать что-либо в спецификации SQL с 92 по настоящее время?

Ответ №1:

Использование EXISTS

 SELECT t2.col2
  FROM TABLE2 t2
 WHERE EXISTS (SELECT NULL
                 FROM TABLE1 t1
                WHERE t1.col2 = t2.col2)
  

Используя В

 SELECT t2.col2
  FROM TABLE2 t2
 WHERE t2.col2 IN (SELECT t1.col2
                     FROM TABLE1 t1)
  

Используя JOIN:

 SELECT DISTINCT t2.col2
  FROM TABLE2 t2
  JOIN TABLE1 t1 ON t1.col2 = t2.col2
  

Комментарии:

1. Я привел свой код ниже, где я использовал ваш код, но он не работает

2. ИЗМЕНИТЕ триггер [sub_contracting_order] на [dbo]. [pur_gi_header] для вставки как DECLARE @Test nVarchar(100); НАЧАТЬ, ЕСЛИ СУЩЕСТВУЕТ (выберите ‘X’ из вставленного a, где a.po_category = ‘SER’ И a.no_of_item = ‘0’ ) НАЧАТЬ ВЫПОЛНЕНИЕ pur_msg_rtr ‘02999200052’, ‘Для заказов на обслуживание номер машины является обязательным’, ‘I’ КОНЕЦ

3. ЕСЛИ СУЩЕСТВУЕТ (ВЫБЕРИТЕ t2.no_of_item из pur_gi_header t2, ГДЕ t2.no_of_item В (ВЫБЕРИТЕ t1.no_of_item из вставленного t1)), ЗАПУСТИТЕ EXEC pur_msg_rtr ‘02999200052’, ‘Номер 1. уже существует, номер машины является обязательным’, ‘I’

4. Как использовать EXISTS в t2.col2?

5. @user724817 Обновите свой вопрос вместо публикации кода в комментариях