Advertisement
Guest User

Untitled

a guest
Feb 21st, 2017
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.64 KB | None | 0 0
  1. -- Convenience Functions
  2. CREATE OR REPLACE FUNCTION to_epoch(IN timestamptz, OUT epoch bigint) AS
  3. $$ SELECT extract(epoch from $1) $$ LANGUAGE SQL;
  4. CREATE OR REPLACE FUNCTION ts_at_tod(IN timestamptz, IN time, OUT timestamptz) AS
  5. $$ SELECT date_trunc('day', $1) + $2 $$ LANGUAGE SQL;
  6.  
  7. -- Get list of target time between start and end
  8. CREATE OR REPLACE FUNCTION times_between(IN range_start timestamptz, IN range_end timestamptz, IN t time)
  9. RETURNS setof timestamptz AS $$
  10. SELECT * FROM
  11. generate_series(
  12. ts_at_tod($1,$3),
  13. ts_at_tod($2,$3),
  14. '1 day'
  15. ) g
  16. WHERE g.g BETWEEN $1 AND $2;
  17. $$ LANGUAGE SQL;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement