我正在尝试从表ACCOUNT_GROUP
的相似列更新表BILL_INFO_DETAIL
的{{1}}列,该列具有一个SERVICE_INFO
的外键。每个BILL_INFO_DETAIL
可以有一个BILL_INFO_DETAIL
。
我尝试了这段代码,但是没有选择正确的SERVICE_INFO
,因为SERVICE_INFO
子句无法按我的预期工作:
WHERE
UPDATE BILL_INFO_DETAIL
SET ACCOUNT_CODE = (SELECT TOP (1) si.ACCOUNT_CODE
FROM SERVICE_INFO si
WHERE si.SERVICE_CODE = SERVICE_CODE);
的{{1}}中的所有项目都设置为BILL_INFO_DETAIL
的第一个ACCOUNT_CODE
似乎这不是那么简单。请告知。
答案 0 :(得分:0)
好的。在进一步研究之后,我从以下答案中了解了如何在更新查询中进行内部联接:https://stackoverflow.com/a/1293347/481656
我同样修改了查询:
UPDATE b
SET b.ACCOUNT_CODE = s.ACCOUNT_CODE
FROM BILL_INFO_DETAIL b
INNER JOIN SERVICE_INFO s ON b.SERVICE_CODE = s.SERVICE_CODE
效果很好。
橡皮鸭。