[英]SQL Trigger - Check into other Table, If exists then Update else Insert
[英]SQL server: IF EXISTS insert x into table A, else insert y into table A
我收到“ #DateRange已在数据库中”的错误。 我想要的是,如果#daterange2中有数据,则进行联合,否则只能从#DateRange1中进行选择。 但是目标表都在#DateRange表中。 这是我的代码:
IF exists (SELECT * FROM #DateRange2)
SELECT * INTO #DateRange
FROM
(SELECT * FROM
#DateRange1
UNION
SELECT * FROM
#DateRange2
) a
ELSE
SELECT * INTO #DateRange
FROM
#DateRange1
嗯,为什么还要打扰条件逻辑呢? 做就是了:
SELECT *
INTO #DateRange
FROM (SELECT *
FROM #DateRange1
UNION
SELECT *
FROM #DateRange2
) a;
如果第二个表中没有行,则不会插入任何行。
另外,检查您是否真的需要UNION
。 通常,首选UNION ALL
-除非您确实要承担删除重复项的开销。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.