MySQL Workbench - 使用 WHERE 子句的 UPDATE 语句
MySQL Workbench - UPDATE statement using WHERE clause
我正在尝试更新一个名为 'Rural' - 列名 'NO2' 的 table,使用来自另一个名为 'new_no2' - 列名的 table 的数据'NO2'。看下面的代码
update Rural
set Rural.NO2 = new_no2.NO2
where Rural.Year = new_no2.Year
and Rural.Site = new_no2.Site;
但是,我一直收到错误代码:1054。'Where clause'
中的未知列 'new_no2.Year'
我浏览了很多教程并尝试了很多东西,例如确保 table 名称正确等等,但由于某种原因,它不起作用。
如果有人能澄清我可能做错了什么,那就太好了。
顺便说一下,我正在使用 MySQL workbench MacBook 版本 8
谢谢
布鲁诺
使用子查询:
update Rural set
Rural.NO2 = coalesce((
select new_no2.NO2
from new_no2
where Rural.Year = new_no2.Year
and Rural.Site = new_no2.Site), no2)
如果在new_no2
中找不到相应的值,则使用coalesce()
保留no2
不变。
我正在尝试更新一个名为 'Rural' - 列名 'NO2' 的 table,使用来自另一个名为 'new_no2' - 列名的 table 的数据'NO2'。看下面的代码
update Rural
set Rural.NO2 = new_no2.NO2
where Rural.Year = new_no2.Year
and Rural.Site = new_no2.Site;
但是,我一直收到错误代码:1054。'Where clause'
中的未知列 'new_no2.Year'我浏览了很多教程并尝试了很多东西,例如确保 table 名称正确等等,但由于某种原因,它不起作用。
如果有人能澄清我可能做错了什么,那就太好了。
顺便说一下,我正在使用 MySQL workbench MacBook 版本 8
谢谢 布鲁诺
使用子查询:
update Rural set
Rural.NO2 = coalesce((
select new_no2.NO2
from new_no2
where Rural.Year = new_no2.Year
and Rural.Site = new_no2.Site), no2)
如果在new_no2
中找不到相应的值,则使用coalesce()
保留no2
不变。