SQL查询从所述表的关系属性更新表属性

时间:2019-04-24 06:58:28

标签: sql-server

我正在尝试从表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

似乎这不是那么简单。请告知。

1 个答案:

答案 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

效果很好。

橡皮鸭。