У меня есть таблица Product
:Вставка данных в запросе в SQL Server
Name Description
----------------------
x 1
y 2
z 3
У меня есть еще один стол Producttemp
:
Name Description
------------------
x 1
x 1
x 2
r 3
r 3
z 8
z 8
Мне нужно вставить данные из Producttemp
в Product
и только что данные, которые находятся в комбинации Name
и Description
.
Так как сейчас x,1
не должны быть вставлены, потому что эта комбинация уже существует в таблице Product
и только (r,1)
и (z,8)
должна быть вставлена, и мы не должны вставлять повторяющиеся комбинации.
Я пытаюсь с этим запросом:
create table #vhf (pk_id numeric)
INSERT INTO product (product_name, product_description)
OUTPUT INSERTED.* INTO #vhf
SELECT
temp.product_name,
temp.product_description
FROM
producttemp
WHERE
NOT EXISTS (SELECT distinct temp.product_name FROM product prj, product temp
WHERE temp.product_description = prj.product_description
AND temp.product_name = prj.product_name)
Этот запрос возвращает все значения, которые не существуют в таблице продукта, но он также вставив повторяющиеся строки
Пожалуйста, проверьте ваш вопрос и исправить опечатки. В этом примере нет '(r, 1)'. С другой стороны, в примере есть '(x, 2)', почему вы не хотите вставлять эту комбинацию? –