仅当不存在时才插入SQL数据库

时间:2019-03-06 13:59:47

标签: sql-server excel vba

使用VBA插入到Microsoft sql数据库中

SELECT ALL *
FROM [MarketAnalysis].[dbo].[ReviewDatabase]
WHERE [VESSEL] = 'BOATY'
  AND [LOAD DATE] BETWEEN DATEADD(day, -3,'20190227') AND DATEADD(day, +3,'20190227')
ORDER BY [ID] DESC

例如,上面,如果插入与名称和日期+/- 3天相匹配的容器,则不要再匹配,因为它与数据库中已有的东西相匹配

1 个答案:

答案 0 :(得分:0)

使用IF NOT EXISTS并删除ORDER BY

IF NOT EXISTS(SELECT *
FROM [MarketAnalysis].[dbo].[ReviewDatabase]
  WHERE [VESSEL] = 'BOATY'
  AND [LOAD DATE] BETWEEN DATEADD(day, -3,'20190227') AND DATEADD(day, +3,'20190227'))
BEGIN
--your insert statement
END