Quick Search:
 
 Oracle PL/SQL: FUNCTIONS: date/time Jump to:  
Category: >> Oracle PL/SQL >> FUNCTIONS: date/time  

<< lastnext >>

Snippet Name: FUNCTIONS: date/time

Description: Function to determine the difference between times

Also see:
» Get Relative Dates and Times
» Convert UK Dates To mySQL Format Dates
» Measure script run time
» Calculate the difference between two t...
» FUNCTIONS: Deterministic
» FUNCTIONS: Nested Functions
» FUNCTIONS: IF statement
» FUNCTIONS: date/time
» FUNCTIONS: Sample functions
» FUNCTIONS: drop
» FUNCTIONS: Recompile
» FUNCTIONS: DEBUG mode
» FUNCTIONS: IN OUT parameter
» FUNCTIONS: with output parameters
» FUNCTIONS: with parameters
» FUNCTIONS: without parameters
» FUNCTIONS: Create function
» FUNCTIONS: special restrictions
» FUNCTIONS: System Privileges
» USER idle time
» IN Function
» Built-In Functions: CASE
» Built-In Functions: DECODE
» Get Date 30 days ago
» SUBST and INSTR together
» INSTR (InString)
» SUBSTR (SubString)
» Perl SQL Update Example
» SELECT: Select For Update
» TO_TIMESTAMP_TZ

Comment: (none)

Language:
Highlight Mode: PLSQL
Last Modified: March 13th, 2009

CREATE OR REPLACE FUNCTION 
time_diff(DATE_1 IN DATE, DATE_2 IN DATE)
RETURN NUMBER IS
 NDATE_1   NUMBER;
 NDATE_2   NUMBER;
 NSECOND_1 NUMBER(5, 0);
 NSECOND_2 NUMBER(5, 0);
BEGIN
  -- Get Julian date number from
  -- first date (DATE_1)
  NDATE_1 := TO_NUMBER(TO_CHAR(DATE_1, 'J'));
 
  -- Get Julian date number from
  -- second date (DATE_2)
  NDATE_2 := TO_NUMBER(TO_CHAR(DATE_2, 'J'));
 
  -- Get seconds since midnight
  -- from first date (DATE_1)
  NSECOND_1 := TO_NUMBER(TO_CHAR(DATE_1, 'SSSSS'));
 
  -- Get seconds since midnight
  -- from second date (DATE_2)
  NSECOND_2 := TO_NUMBER(TO_CHAR(DATE_2, 'SSSSS'));
 
  RETURN (((NDATE_2 - NDATE_1)*86400)+(NSECOND_2 - NSECOND_1));
END time_diff;
/


 
   Home |    Search |    Code Library |    Sponsors |    Privacy |    Terms of Use |    Contact Us © 2003 - 2024 psoug.org