Practical Practice 10

Oracle Practice

Write a program to convert days into years, weeks and days in PLSQL block.

Write a program to convert days into years, weeks and days in PLSQL block.

SOLUTION

--Static code

SET SERVEROUTPUT ON;
DECLARE
    total_days NUMBER := 400;    
    years NUMBER;         
    weeks NUMBER;         
    days NUMBER;          
BEGIN
    years := FLOOR(total_days / 365);       
    weeks := FLOOR(MOD(total_days, 365) / 7);
    days := MOD(total_days, 365) MOD 7;    
    DBMS_OUTPUT.PUT_LINE('Total days: ' || total_days);
    DBMS_OUTPUT.PUT_LINE('Equivalent to: ' || years || ' year(s), ' || weeks || ' week(s), and ' || days || ' day(s)');
END;
/
    


--Dynamic code 
SET SERVEROUTPUT ON;
DECLARE
    total_days NUMBER := &total_days;    
    years NUMBER;         
    weeks NUMBER;         
    days NUMBER;          
BEGIN
    years := FLOOR(total_days / 365);       
    weeks := FLOOR(MOD(total_days, 365) / 7);
    days := MOD(total_days, 365) MOD 7;    
    DBMS_OUTPUT.PUT_LINE('Total days: ' || total_days);
    DBMS_OUTPUT.PUT_LINE('Equivalent to: ' || years || ' year(s), ' || weeks || ' week(s), and ' || days || ' day(s)');
END;
/

TRY IT YOURSELF

Leave a Reply

Your email address will not be published. Required fields are marked *

sign up!

We’ll send you the hottest deals straight to your inbox so you’re always in on the best-kept software secrets.