0

对不起,如果这是一个基本问题,但我只是 SQL 的初学者。我有 2 张桌子:

  1. ACCT_GUID_REF有 2 个字段:帐号 ( ) 和该帐号 ACCTNBR的 GUID ( )。AcctIDGUID
  2. RESTAURANTS中每个餐厅都有新的详细信息行。

当我添加新行时,我想RESTAURANTS.ACCT_GUID用 table 中的匹配帐户更新列ACCT_GUID_REF

我试过这个,但它返回不止一行,因为 table 中有多个餐厅帐户行RESTAURANT。如何修复更新?

UPDATE RESTAURANTS
SET RESTAURANTS.ACCT_GUID =
(SELECT AcctIDGUID 
    FROM ACCT_GUID_REF
    WHERE ACCT_GUID_REF.ACCTNBR = RESTAURANTS.ACCTNBR)  
4

1 回答 1

1

听起来您可能想在 UPDATE 语句的源中执行 INNER JOIN。

UPDATE RESTAURANTS
   SET ACCT_GUID = A.AcctIDGuid
  FROM ACCT_GUID_REF A
       INNER JOIN RESTAURANTS R
               ON A.ACCTNBR = R.ACCTNBR
于 2013-08-14T13:45:03.690 回答