如何用sql查詢出連續三個月金額大於50的記錄


with tmp as
(
select 'A' AS USERNAME,to_date('2017.10','yyyy.mm') month,45 num from dual union all
select 'A' AS USERNAME,to_date('2017.11','yyyy.mm') month,53 from dual union all
select 'A' AS USERNAME,to_date('2017.12','yyyy.mm') month,59 from dual union all
select 'B' AS USERNAME,to_date('2018.1','yyyy.mm') month,78 from dual union all
select 'B' AS USERNAME,to_date('2018.2','yyyy.mm') month,69 from dual union all
select 'B' AS USERNAME,to_date('2018.3','yyyy.mm') month,51 from dual union ALL
select 'B' AS USERNAME,to_date('2018.5','yyyy.mm') month,49 from dual union ALL
select 'B' AS USERNAME,to_date('2018.4','yyyy.mm') month,51 from dual union ALL
select 'B' AS USERNAME,to_date('2018.6','yyyy.mm') month,49 from dual union ALL
select 'A' AS USERNAME,to_date('2017.9','yyyy.mm') month,52 from dual union ALL
select 'A' AS USERNAME,to_date('2017.7','yyyy.mm') month,49 from dual union ALL
select 'A' AS USERNAME,to_date('2017.8','yyyy.mm') month,55 from dual
)
select USERNAME,month start_month,num,num2,num3 from
( select USERNAME,
month,
num,
lead(num, 1, null) over(PARTITION BY username order by month) num2,
lead(num, 2, null) over(PARTITION BY username order by month) num3
from tmp order by username,month)
--where num >=50 and num2 >=50 and num3 >=50


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM