SQL UPDATE 表 1 到表 2

Posted

技术标签:

【中文标题】SQL UPDATE 表 1 到表 2【英文标题】:SQL UPDATE Table1 to Table 2 【发布时间】:2016-04-25 21:28:18 【问题描述】:

我遇到了 SQL UPDATE 命令的问题。我有两张表,Customer 和 Customer2。 Customer 表包含所有客户信息。 Customer2 表包含有未结发票的客户。我要做的是使用 Customer 表中的区号更新 Customer2 表。两个表的匹配部分是 CUS_CODE 列。

这是我目前所拥有的:

UPDATE Customer2
SET Customer2.cus_areacode = Customer.cus_areacode
FROM Customer2
INNER JOIN Customer
ON (customer.cus_code = customer2.cus_code)
WHERE customer.cus_code = customer2.cus_code;

从“来自 Customer2”开始出现语法错误。我一直在绞尽脑汁试图让这个工作,任何帮助将不胜感激。我正在使用 MS Access 中的 SQL 执行此任务。

【问题讨论】:

***.com/questions/1375207/… 【参考方案1】:

你想做这样的事情。 where 子句是多余的,因为您已经加入了列。

update customer2 as c2 inner join customer as c on c2.[cus_code]=c.[cus_code]
set c2.[cus_areacode]=c.[cus_areacode]

【讨论】:

这就像一个魅力,它是有道理的。我按照其他网站的说明进行操作,而我发布的原件是从示例代码中剪切粘贴的。您发布的这段代码要简单得多。我确实有一个问题是为什么使用“as”将 Customer2 和 Customer 分别转换为 C2 和 C? -谢谢! 如果我还想从同一个表中更新 cus_phone,此命令将如何变化?

以上是关于SQL UPDATE 表 1 到表 2的主要内容,如果未能解决你的问题,请参考以下文章

SQL根据一张表数据更新另外一张表

SQL一个字段多个数值怎么用update语句在每个数值上都加1

orale update一张表的字段为另一张表的字段

sql 需要先用select 查找到表中相应的记录 在update 批量修改 如何实现

oracle 怎么理解update 表 set 字段1 = 值,字段2 = 值 where 字段3 = 值

ClickHouse-尚硅谷(5. 入门-SQL 操作)学习笔记