首页 > 解决方案 > 用SQL中相关ID的值替换缺失值

问题描述

我在用 SQL 中以下相关 ID 的值替换缺失值时遇到了挑战:

我有一个如下表:

表格1

我想用相关 ID 的值替换缺失值。所以表 1 将如下所示。

表 2

任何人请在 SQL 中帮助我应对上述挑战。

标签: sql

解决方案


利用 CTE 并更新表格:

update table1 a set fld1 =(
with cte1 as (
select a.ticketid, a.fld1, a.fld2, b.ticketid as second_ticketid from table1 a inner join table1 b
on (a.ticketid = b.ticketid2))
select fld1 from cte1 b where a.ticketid2 = b.ticketid) WHERE FLD1 IS NULL;

update table1 a set fld2 =(
with cte1 as (
select a.ticketid, a.fld1, a.fld2, b.ticketid as second_ticketid from table1 a inner join table1 b
on (a.ticketid = b.ticketid2))
select fld2 from cte1 b where a.ticketid2 = b.ticketid) WHERE FLD2 IS NULL;

推荐阅读