timetz.sql 1.8 KB

1234567891011121314151617181920212223242526272829
  1. --
  2. -- TIMETZ
  3. --
  4. CREATE TABLE TIMETZ_TBL (f1 time(2) with time zone);
  5. -- this should fail (timezone not specified without a date)
  6. INSERT INTO TIMETZ_TBL VALUES ('15:36:39 m2');
  7. -- this should fail (dynamic timezone abbreviation without a date)
  8. INSERT INTO TIMETZ_TBL VALUES ('15:36:39 MSK m2');
  9. SELECT f1 AS "None" FROM TIMETZ_TBL WHERE f1 < '00:00-07';
  10. --
  11. -- test EXTRACT
  12. --
  13. SELECT EXTRACT(MICROSECOND FROM TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04');
  14. SELECT EXTRACT(MILLISECOND FROM TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04');
  15. SELECT EXTRACT(SECOND FROM TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04');
  16. SELECT EXTRACT(MINUTE FROM TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04');
  17. SELECT EXTRACT(HOUR FROM TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04');
  18. SELECT EXTRACT(DAY FROM TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04'); -- error
  19. SELECT EXTRACT(FORTNIGHT FROM TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04'); -- error
  20. SELECT EXTRACT(TIMEZONE FROM TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04:30');
  21. SELECT EXTRACT(TIMEZONE_HOUR FROM TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04:30');
  22. SELECT EXTRACT(TIMEZONE_MINUTE FROM TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04:30');
  23. SELECT EXTRACT(EPOCH FROM TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04');
  24. -- date_part implementation is mostly the same as extract, so only
  25. -- test a few cases for additional coverage.
  26. SELECT date_part('microsecond', TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04');
  27. SELECT date_part('millisecond', TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04');
  28. SELECT date_part('second', TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04');
  29. SELECT date_part('epoch', TIME WITH TIME ZONE '2020-05-26 13:30:25.575401-04');