sql >> Database >  >> RDS >> Oracle

Hoe de waarden voor de volgende en volgende datum in een tabel te krijgen

U kunt hiervoor de vensterfuncties gebruiken

    select  
    lead(CVal, 1) over(order by Effective_Date) as NextVal 
    ,lead(CPrice, 1) over(order by Effective_Date) as NextPrice  
    ,lead(CVal, 2) over(order by Effective_Date) as SecondVal 
    ,lead(CPrice, 2) over(order by Effective_Date) as SecondPrice

    from tbl where Effective_Date >=  '31-DEC-19'
    where rownum = 1
    order by Effective_Date 

Uitvoer is

NextVal NextPrice SecondVal SecondPrice
2       101       3         102


  1. base64-gegevens opslaan - probleem met te grote rijgrootte

  2. hulp nodig bij het toevoegen van een kolom aan één tabel met behulp van een functie die rekenkundige bewerkingen uitvoert tussen kolommen uit twee afzonderlijke tabellen

  3. Hoe MONTHNAME() werkt in MariaDB

  4. 2 manieren om te zien of verouderde functies nog steeds worden gebruikt in een SQL Server-instantie