【发布时间】:2013-09-27 10:53:33
【问题描述】:
IF (EXISTS
(SELECT documentsRepo.DocumentRouteNumber
FROM documentsRepo
INNER JOIN dreDocuments ON documentsRepo.DocumentRouteNumber = dreDocuments.DocumentRouteNumber))
UPDATE DocumentsRepo
SET documentsRepo.documentTypeID = dreDocuments.DocumentTypeID,
documentsRepo.DepartmentID = dreDocuments.DepartmentID
FROM documentsRepo
INNER JOIN dreDocuments ON documentsRepo.DocumentRouteNumber = dreDocuments.DocumentRouteNumber ELSE
INSERT INTO documentsRepo (DocumentTypeID, DepartmentID, DocumentRouteNumber, SOURCE, Destination)
SELECT DocumentTypeID,
DepartmentID,
DocumentRouteNumber,
SOURCE,
Destination
FROM dreDocuments
我正在使用上面的代码来更新或插入记录。它在第一条记录插入中正常工作。更新完美。但是下一个插入批次不起作用。
【问题讨论】:
-
您也可以通过
merge实现类似的功能。请查看stackoverflow.com/questions/10495786/… -
你有什么错误吗?
标签: sql insert sql-update