SQL> SELECT acct_no,
trans_amt,
set_date,
opp_acct_no,
dc_flag,
seqno,
MAX(seqno) over(PARTITION BY acct_no, trans_amt, set_date, opp_acct_no, dc_flag) max_seq
FROM t100
where
trans_amt ='5890.00'
AND set_date=DATE '2014-2-21'
AND opp_acct_no IS NULL
AND dc_flag='1' 2 3 4 5 6 7 8 9 10 11 12 13 ;
ACCT_NO TRANS_AMT SET_DATE OPP_ACCT_NO DC_FLAG SEQNO MAX_SEQ
------------------------------ ---------- ------------ -------------------------------- - ---------- ----------
12601002510090000222 5890 21-FEB-14 1 3 3
12601002510090000222 5890 21-FEB-14 1 2 7
1
利用分析函数改写解析
最新推荐文章于 2024-09-12 11:57:58 发布
本文展示了如何使用分析函数(窗口函数)优化SQL查询,特别是替换子查询来获取相同的结果。通过具体的例子,演示了在特定条件下筛选最大序列号的查询,以提高查询效率。
摘要由CSDN通过智能技术生成