sql - 当值为 NULL 时从其他表更新 SQL
问题描述
我有以下问题:有一个包含所有客户订单的“订单”表。然而,“emloyee_supervisor”列中有许多值(进行交易的员工的主管的 ID)NULL。相关信息存储在员工自己的表中,即“员工”,在名为“主管”的列中。现在我想更新 NULL(即从“员工”到“订单”的值)。我怎样才能做到这一点?
员工的key是employee_id(在“employees”中用作key),订单的key是order_id。
我正在使用 DBvisualizer。
我不允许分享真实数据,但这就是输入在概念上的样子:
这是所需的输出(“员工”表当然没有改变)
解决方案
试试下面的查询。
update o
set o.emloyee_supervisor = e.supervisor
from orders o
inner join employees e
on e.employee_id = o.employee_id
where o.emloyee_supervisor is null
推荐阅读
- apache-camel - 如何在 Apache Camel 中为 jsonpath 编写存在谓词?
- junit - SONAR 代码覆盖率未反映在私有方法中
- recaptcha-enterprise - Google Enterprise Recaptcha 对未记录请求的基本指标进行评分
- tensorflow - 从 1.x 迁移到 TensorFlow 2.x 会导致 Google AI 平台上的训练和 ResourceExhaustedErrors 慢得多
- postgresql - PostgreSQL如何安全地删除pg_wal目录中的文件
- jms - 从 APIGEE 代理端点调用 AMQ 侦听器
- python - search and extract data from string base on string value
- typescript - 如何使用新的 elasticsearch typescript 类型
- php - Wordpress comments.PHP 在隐身模式下显示缓存版本,但登录管理员的新版本
- php - DataTables + PHP/AJAX - 在显示之前操作结果