sql表表示无序的行集合。为了使之可行,需要在每个表中都有一个排序列。 假设这些存在并被称为 id ,您可以使用 row_number() 将表中的行对齐 case 优先级表达式:
select case when a.x = 0 then b.x else a.x end x
from (select row_number() over(order by id) rn, x from tablea) a
left join (select row_number() over(order by id) rn, x from tableb) b
on a.rn = b.rn
1条答案
按热度按时间66bbxpm51#
sql表表示无序的行集合。为了使之可行,需要在每个表中都有一个排序列。
假设这些存在并被称为
id
,您可以使用row_number()
将表中的行对齐case
优先级表达式: