我需要将非现有值插入表。
BarcodeSubgroup
(单列表)nvarchar
)表格中的示例数据
ProductSubGroupID
-----------------
F11WD
F77AH
G36CN
G37HJ
H11AA
H11AD
现在我需要在表中插入不存在的值。
希望检查并插入值。
H11AA
H11AD
G78DE
G76DK
G41JA
B45JC
查询书面
insert into BarcodeSubgroup
select
productsubgroupid
where
not exists ('G78DE', 'G76DK', 'G41JA',
'B45JC', 'H11AA', 'H11AD')
现在它应该只插入4个不存在的值。
答案 0 :(得分:2)
您可以使用select . . . not exists
:
insert into BarcodeSubgroup(productsubgroupid)
select productsubgroupid
from (values ('G78DE'), ('G76DK'), ('G41JA'), ('B45JC'), ('H11AA'), ('H11AD') ) v(productsubgroupid)
where not exists (select 1
from BarcodeSubgroup bs
where bs.productsubgroupid = v.productsubgroupid
);