#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 Обновите свой вопрос вместо публикации кода в комментариях