mirror of
				https://github.com/postgres/postgres.git
				synced 2025-10-29 22:49:41 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			55 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			SQL
		
	
	
	
	
	
| -- unixdate
 | |
| -- Routines to convert int4 (Unix system time) to datetime
 | |
| --  and int4 (delta time) to timespan
 | |
| --
 | |
| -- Thomas Lockhart (lockhart@alumni.caltech.edu)
 | |
| -- 1997-11-25
 | |
| --
 | |
| -- This cheats and reuses existing code in the standard package.
 | |
| -- Can not include this directly because built-in functions are optimized
 | |
| --  into a cache and the duplicate function names abstime_datetime() and
 | |
| --  reltime_timespan() result in duplicate constants.
 | |
| --
 | |
| -- This works with Postgres v6.2 and higher.
 | |
| 
 | |
| --
 | |
| -- Conversions from integer to datetime
 | |
| --
 | |
| 
 | |
| CREATE FUNCTION abstime_datetime(int4)
 | |
|  RETURNS datetime
 | |
|  AS '-' LANGUAGE 'internal';
 | |
| 
 | |
| CREATE FUNCTION datetime(int4)
 | |
|  RETURNS datetime
 | |
|  AS 'select abstime_datetime($1)' LANGUAGE 'SQL';
 | |
| 
 | |
| CREATE FUNCTION reltime_timespan(int4)
 | |
|  RETURNS timespan
 | |
|  AS '-' LANGUAGE 'internal';
 | |
| 
 | |
| CREATE FUNCTION timespan(int4)
 | |
|  RETURNS timespan
 | |
|  AS 'select reltime_timespan($1)' LANGUAGE 'SQL';
 | |
| 
 | |
| --
 | |
| -- Conversions back to integer
 | |
| --
 | |
| 
 | |
| CREATE FUNCTION datetime_abstime(datetime)
 | |
|  RETURNS int4
 | |
|  AS '-' LANGUAGE 'internal';
 | |
| 
 | |
| CREATE FUNCTION utime(datetime)
 | |
|  RETURNS int4
 | |
|  AS 'select datetime_abstime($1)' LANGUAGE 'SQL';
 | |
| 
 | |
| CREATE FUNCTION timespan_reltime(timespan)
 | |
|  RETURNS int4
 | |
|  AS '-' LANGUAGE 'internal';
 | |
| 
 | |
| CREATE FUNCTION uspan(timespan)
 | |
|  RETURNS int4
 | |
|  AS 'select timespan_reltime($1)' LANGUAGE 'SQL';
 | |
| 
 |