我使用以下脚本填充表格。这个脚本运行得很好:
insert into TSC_Intermediate.dbo.stock
(article
, description
, article_id
, client
, available_stock
, unit
, location
, warehouse)
select a.article
, b.art_descr
, a.article_id
, a.client
, a.value_1
, a.unit_code
, a.location
, a.warehouse
from aststock a
join
algarticle b
on a.client = b.client
and a.article = b.article
where a.client = 'cp'
现在我需要做的是继续运行该脚本,但是当存在重复键时让它更新 available_stock ,并在没有时插入新行。关键是(文章,位置,仓库)
我相信我需要使用代码:ON DUPLICATE KEY UPDATE'available_stock'
我错过了一些东西。我在这个主题上可以看到的其他问题只涉及添加1或2行,因此它们指定要更新的值。我很困惑如何使这项工作。此外,当我在该代码的末尾开始键入ON DUPLICATE时,SQL在ON下面给出了一条波浪线,表示我将它放在错误的位置。
答案 0 :(得分:0)
回答了我自己的问题。由于我使用的是TSQL,我必须使用合并语句。