使用内部联接更新引发语法错误

时间:2016-06-20 12:04:41

标签: sql ms-access

我有以下表格

enter image description here

我想更新表格通讯录,以便 table2 中的字段 companyId newCompanyId

我尝试过以下查询:

UPDATE contacts
SET contacts.companyId = table2.newComapnyId
FROM contacts
INNER JOIN table2 
ON contacts.contactId = table2.conatctId

但是我收到语法错误。我已经搜索过,据我所知,这就是我应该编写查询的方式。

(请原谅错别字,在我仔细查看的真实查询中,并且没有名称错误等等......)

2 个答案:

答案 0 :(得分:2)

在某些RDMS中,您不必指定FROM子句,因为它已包含在语句中。试试这个:

UPDATE contacts c
INNER JOIN table2 t
ON c.contactId = t.conatctId
SET c.companyId = t.newComapnyId

答案 1 :(得分:-1)

对于SQL SERVER

使用别名

UPDATE c
SET c.companyId = t.newComapnyId
FROM contacts c
INNER JOIN table2 t
ON c.contactId = t.conatctId