做个JOB,周期性Insert,带上where条件,你的问题太虚了,一下子把问题无限扩大
解决方案 »
- group by 的简单问题
- Sql Server 中的 Analysis Service 都有哪些用处,谁能描述一下。
- 如何单向同步不同数据库服务器的两张表
- 触发器问题
- sqlserver里出现好多的Audit Logout请问高手如何解决啊??
- SQL2005服务器名称不能用"."!VS无法找到配置文件:RsReportDesigner.config
- 在SQL SERVER 2003 用代码导出xls文件不成功
- 请问这段SQL该如何写?
- 求一句(n句也行)经典的SQl
- 一个很急的问题(请大力,马可,邹捷等高手帮帮忙)
- 求一条SQL语句,游标的能否解决的SQL语句
- sql存储过程判断参数为空的问题
--不知道能不能满足你的需求
USE TEMPDB
GO
IF OBJECT_ID('T1') IS NOT NULL DROP TABLE T1
IF OBJECT_ID('T2') IS NOT NULL DROP TABLE T2
GO
CREATE TABLE T1(ID1 INT,VAL1 VARCHAR(50))
CREATE TABLE T2(ID2 INT,VAL2 VARCHAR(50))
GO
INSERT INTO T1
SELECT 1,'A' UNION ALL
SELECT 2,'B' UNION ALL
SELECT 3,'C'
MERGE INTO T2 AS TB_TARGET
USING T1 AS TB_SOURCE
ON TB_TARGET.ID2=TB_SOURCE.ID1
WHEN NOT MATCHED BY TARGET THEN
INSERT(ID2,VAL2)
VALUES(ID1,VAL1)
WHEN NOT MATCHED BY SOURCE THEN
DELETE
WHEN MATCHED AND TB_TARGET.VAL2<>TB_SOURCE.VAL1 THEN
UPDATE SET
TB_TARGET.VAL2=TB_SOURCE.VAL1
OUTPUT $ACTION,ISNULL(DELETED.ID2,INSERTED.ID2) AS ID,DELETED.VAL2,INSERTED.VAL2
;