【发布时间】:2019-05-27 23:02:44
【问题描述】:
事件表(初始):
状态表:
table ready_reason:
表延迟原因:
表备用原因:
倒台原因:
需要的输出
所以基本上,我必须将事件表中状态代码和原因代码列中的值替换为下表中的相应值。
我尝试了各种内部连接的排列和组合。然而,破解不了。希望有任何见解。
我的更新状态码列的代码(没用):
update event eve
set eve.status_code = sta.name
inner join status sta on eve.status_code = sta.status_code
由于 event 表中的 reason_code 列需要使用多个表进行更新,所以我无法为这一列提供代码
【问题讨论】:
-
提示:使用
JOIN,不要更改表!您只需生成结果集所需的内容。 -
其他所有的表都是静态数据吗?一种方法是使用 CASE 并对值进行硬编码,这不是最优雅的方法,但如果这是一次性的事情,它可能是一个可行的解决方案。