更新时语法错误

时间:2014-04-23 15:01:18

标签: sql ms-access-2013

当谈到SQL时,我有点像诺贝尔,我正在使用Access 2013,我正在尝试更新一个表中的日期字段,使用来自不同表的ID号来更新特定的字段。

我的查询是:

UPDATE Leadsavailable SET First_Usage_Date = '23/04/2014'
from leadsavailable r
inner join WorkingTable_GOSH g
    on g.[lead number] = r.[Lead number] 
where g.Type = 'GOSH'

但我一直在犯错,不知道为什么。

非常感谢任何帮助

3 个答案:

答案 0 :(得分:1)

假设我对您的要求的理解是正确的,并且您希望更新LeadsavailableWorkingTable_GOSHType = 'GOSH'匹配记录的所有记录,那么这将为您提供结果#39;重新开始:

UPDATE Leadsavailable 
SET First_Usage_Date = '23/04/2014'
WHERE [lead number] in (SELECT [Lead number] 
                        FROM WorkingTable_GOSH 
                        WHERE Type = 'GOSH')

答案 1 :(得分:0)

在手机中试试抱歉:

UPDATE Leadsavailable A
INNER JOIN WorkingTable_GOSH B
ON A.[lead number] = B.[Lead number]
Set A.[First_Usage_Date] = '23/04/2014'
Where B.Type = 'GOSH';

答案 2 :(得分:0)

原始查询中的错误是列出了两次表名。它应该看起来像这样:

UPDATE r
   SET First_Usage_Date = '23/04/2014'
  FROM leadsavailable r
inner join WorkingTable_GOSH g on g.[lead number] = r.[Lead number] 
where g.Type = 'GOSH'