Plsql 具有max和null值的Case语句
我有一张桌子: 我需要在哪里选择拖车id 日期值为null且为空 从日期列开始的最大日期。 “日期”列中可以有两个以上的日期值 输出将选择c_id 3和4Plsql 具有max和null值的Case语句,plsql,plsqldeveloper,Plsql,Plsqldeveloper,我有一张桌子: 我需要在哪里选择拖车id 日期值为null且为空 从日期列开始的最大日期。 “日期”列中可以有两个以上的日期值 输出将选择c_id 3和4 如何在一个案例陈述中写下这一点?分析可能会有所帮助;按日期列降序排列值,并使用附加的NULL FIRST子句。例如: SQL> with test (a_id, c_id, c_date) as 2 (select 1, 2, date '2017-05-20' from dual union all 3 sele
如何在一个案例陈述中写下这一点?分析可能会有所帮助;按日期列降序排列值,并使用附加的NULL FIRST子句。例如:
SQL> with test (a_id, c_id, c_date) as
2 (select 1, 2, date '2017-05-20' from dual union all
3 select 1, 3, date '2017-07-17' from dual union all
4 select 1, 4, null from dual
5 )
6 select a_id, c_id, c_date
7 from (select a_id, c_id, c_date,
8 row_number () over (partition by a_id
9 order by c_date desc nulls first) rn
10 from test
11 )
12 where rn <= 2;
A_ID C_ID C_DATE
---------- ---------- ----------
1 4
1 3 2017-07-17
SQL>
您是否可以显示您已经尝试过的内容,以及您遇到错误或无法理解代码如何工作的点?至少存在一些伪代码标点符号是有原因的;我建议你用它。我试图修正格式;希望现在情况有所好转。不过,你说的两张身份证是什么意思?什么是拖车?二一行有什么不同的吗?