我想从类似的表中获取“最重要”的数据:
美国广播公司 | ID 1 2 3 | 1 4 5 | 1 6 | 1
AC=Columns
1-6 values (未设置的字段为空)
数据按id降序排列
当我查询我想获取最新的写入数据时,在这个例子中,查询应该在一行中给我 1、4 和 6:
美国广播公司 | ID 1 4 6 | 1
这是我尝试过的,但后来我得到了正确的结果,但在不同的行中:
select * from
( select id, a from dataTable where id=(select max(dt.dataRow) from dataTable dt where dt.id = 1)) a_query
full outer join
( select id, b from dataTable where id=(select max(dt.dataRow) from dataTable dt where dt.id = 1)) b_query
on a_query.id=b_query.id
full outer join
( select id, c from dataTable where id=(select max(dt.dataRow) from dataTable dt where dt.id = 1)) c_query
on nvl(a_query.id, b_query.id)=c_query.id
首选Oracle SQL