单行子查询返回多个行,无法更新字段

根据表employee的字段emp_no ,emp_name,对表forecasted_statement的emp_no 字段进行更新,emp_name 作为连接条件。

update sales_test.forecasted_statement 

set forecasted_statement.emp_no = (select employee.emp_no from  sales_test.employee  join forecasted_statement  on employee.emp_name = forecasted_statement.SECTOR_OWNER )

where exists (select  1 from  sales_test.employee  join forecasted_statement  on employee.emp_name = forecasted_statement.SECTOR_OWNER);

image.png

employee表:

image.png

forecasted_statement表:

image.png

SQL ZxxT 发布于 2023-9-26 10:08 (编辑于 2023-9-26 10:12)
1min目标场景问卷 立即参与
回答问题
悬赏:5 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共1回答
最佳回答
0
Z4u3z1Lv6专家互助
发布于2023-9-26 10:09(编辑于 2023-9-26 10:13)

这一段不止一行数据

image.png

----------------

update a set a.emp_no=b.emp_no from forecasted_statement a inner join employee b on a.emp_name=b.emp_name

  • ZxxT ZxxT(提问者) 补充了这两张表,大佬帮忙看一下,正确的咋写呀
    2023-09-26 10:13 
  • Z4u3z1 Z4u3z1 回复 ZxxT(提问者) 补充在上面了
    2023-09-26 10:14 
  • ZxxT ZxxT(提问者) 回复 Z4u3z1 直接运行这段,提示指令未正确结束:update a set a.emp_no=b.emp_no from forecasted_statement a inner join employee b on a.emp_name=b.emp_name;
    2023-09-26 10:18 
  • Z4u3z1 Z4u3z1 回复 ZxxT(提问者) 啥数据库?
    2023-09-26 10:19 
  • ZxxT ZxxT(提问者) 回复 Z4u3z1 oracle
    2023-09-26 10:25 
  • 1关注人数
  • 187浏览人数
  • 最后回答于:2023-9-26 10:13
    请选择关闭问题的原因
    确定 取消
    返回顶部