|
|
|
|
@ -0,0 +1,381 @@
|
|
|
|
|
-- For function TO_TIMESTAMP
|
|
|
|
|
|
|
|
|
|
-- float8_timestamptz
|
|
|
|
|
SELECT TO_TIMESTAMP(' Infinity'::float);
|
|
|
|
|
SELECT TO_TIMESTAMP('-Infinity'::float);
|
|
|
|
|
SELECT TO_TIMESTAMP('NaN'::float);
|
|
|
|
|
SELECT TO_TIMESTAMP(-999888762478);
|
|
|
|
|
|
|
|
|
|
---------------------------------------------
|
|
|
|
|
--------- 12-hour clock(DEFAULT FMT) --------
|
|
|
|
|
---------------------------------------------
|
|
|
|
|
SET nls_timestamp_format = 'YYYY-MM-DD HH:MI:SS.FF AM';
|
|
|
|
|
SHOW nls_timestamp_format;
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('1998');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28 01');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28 01:02');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28 01:02:03');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28 01:02:03.12');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28 01:02:03.12 AM');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28 11:12:13 PM');
|
|
|
|
|
SELECT TO_TIMESTAMP('01');
|
|
|
|
|
SELECT TO_TIMESTAMP('01', 'yyyy-MM-dd');
|
|
|
|
|
|
|
|
|
|
-- TO_TIMESTAMP(text)
|
|
|
|
|
SHOW nls_timestamp_format;
|
|
|
|
|
SELECT TO_TIMESTAMP('01');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 11');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 11:12');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 11:12:13');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 11:12:13.12');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 11:12:13.12 PM');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 11:12:13 PM');
|
|
|
|
|
|
|
|
|
|
-- TO_TIMESTAMP(text, fmt)
|
|
|
|
|
SET DateStyle TO 'ISO, MDY';
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('32-1-1','DD-MM-YYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('31-1-1','DD-MM-YYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('1-1-1','DD-MM-YYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('0-1-1','DD-MM-YYYY');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('1-0-1','DD-MM-YYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('1-1-1','DD-MM-YYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('1-12-1','DD-MM-YYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('1-13-1','DD-MM-YYYY');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('28-2-1','DD-MM-YYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('29-2-1','DD-MM-YYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('29-2-4','DD-MM-YYYY');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('0-1','DDD-YYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('367-1','DDD-YYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('366-1','DDD-YYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('366-4','DDD-YYYY');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('0','HH12');
|
|
|
|
|
SELECT TO_TIMESTAMP('1','HH12');
|
|
|
|
|
SELECT TO_TIMESTAMP('12','HH12');
|
|
|
|
|
SELECT TO_TIMESTAMP('13','HH12');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('0','MI');
|
|
|
|
|
SELECT TO_TIMESTAMP('59','MI');
|
|
|
|
|
SELECT TO_TIMESTAMP('60','MI');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('0','SS');
|
|
|
|
|
SELECT TO_TIMESTAMP('59','SS');
|
|
|
|
|
SELECT TO_TIMESTAMP('60','SS');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('60','DDD-PS');
|
|
|
|
|
SELECT TO_TIMESTAMP('366-4','YYYY-P');
|
|
|
|
|
SELECT TO_TIMESTAMP('366-4','YYYY-DD-12');
|
|
|
|
|
|
|
|
|
|
select TO_TIMESTAMP('-4713','YYYY');
|
|
|
|
|
select TO_TIMESTAMP('-4712','YYYY');
|
|
|
|
|
select TO_TIMESTAMP('-1','YYYY');
|
|
|
|
|
select TO_TIMESTAMP('0','YYYY');
|
|
|
|
|
select TO_TIMESTAMP('1','YYYY');
|
|
|
|
|
select TO_TIMESTAMP('9999','YYYY');
|
|
|
|
|
select TO_TIMESTAMP('10000','YYYY');
|
|
|
|
|
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 pm', 'yyyymmdd hh:MI pm');
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 p.m.', 'yyyymmdd hh:MI p.m.');
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 111', 'yyyymmdd hh:MI MS');
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 111', 'yyyymmdd hh:MI US');
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 11111', 'yyyymmdd hh:MI SSSSS');
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 11111 TZ', 'yyyymmdd hh:MI SSSSS TZ');
|
|
|
|
|
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 111 B.C.', 'yyyymmdd hh:MI US B.C.');
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 111 BC', 'yyyymmdd hh:MI US BC');
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 111 fri', 'yyyymmdd hh:MI US dy');
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 111 fri 3', 'yyyymmdd hh:MI US dy Q');
|
|
|
|
|
|
|
|
|
|
select TO_TIMESTAMP('2012I30 09:30 111 fri 3', 'yyyyRMdd hh:MI US dy Q');
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 5 1234', 'yyyymmdd hh:MI W J');
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 pm', 'yyyymmdd hh:MI pm FF');
|
|
|
|
|
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 5555', 'yyyymmdd hh:MI RRRR');
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 55', 'yyyymmdd hh:MI RR');
|
|
|
|
|
select TO_TIMESTAMP('20120930 09:30 55', 'yyyymmdd hh:MI FF');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('0000-09-01','YYYYY-MM-DD');
|
|
|
|
|
SELECT TO_TIMESTAMP('0000-09-01','SYYYYY-MM-DD');
|
|
|
|
|
SELECT TO_TIMESTAMP('0000-09-01','SYYYY-Y-MM-DD');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('25361','SSSSS');
|
|
|
|
|
SELECT TO_TIMESTAMP('25361-2','SSSSS-HH12');
|
|
|
|
|
SELECT TO_TIMESTAMP('25361-07','SSSSS-HH12');
|
|
|
|
|
SELECT TO_TIMESTAMP('25361-2','SSSSS-MI');
|
|
|
|
|
SELECT TO_TIMESTAMP('25361-10','SSSSS-MI');
|
|
|
|
|
SELECT TO_TIMESTAMP('25361-2','SSSSS-SS');
|
|
|
|
|
SELECT TO_TIMESTAMP('25361-41','SSSSS-SS');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('2650000','J');
|
|
|
|
|
SELECT TO_TIMESTAMP('2650000-2542','J-YYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('2650000-2543','J-YYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('2650000-4','J-MM');
|
|
|
|
|
SELECT TO_TIMESTAMP('2650000-5','J-MM');
|
|
|
|
|
SELECT TO_TIMESTAMP('2650000-8','J-DD');
|
|
|
|
|
SELECT TO_TIMESTAMP('2650000-9','J-DD');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-245','YYYY-DDD');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-245-8','YYYY-DDD-MM');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-245-9','YYYY-DDD-MM');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-245-1','YYYY-DDD-DD');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-245-2','YYYY-DDD-DD');
|
|
|
|
|
select TO_TIMESTAMP('2012-11-15','YYYY-MM-DD');
|
|
|
|
|
|
|
|
|
|
--MS
|
|
|
|
|
SELECT TO_TIMESTAMP('-1','MS');
|
|
|
|
|
SELECT TO_TIMESTAMP('0','MS');
|
|
|
|
|
SELECT TO_TIMESTAMP('256','MS');
|
|
|
|
|
SELECT TO_TIMESTAMP('999','MS');
|
|
|
|
|
SELECT TO_TIMESTAMP('1000','MS');
|
|
|
|
|
--WW
|
|
|
|
|
SELECT TO_TIMESTAMP('0','WW');
|
|
|
|
|
SELECT TO_TIMESTAMP('1','WW');
|
|
|
|
|
SELECT TO_TIMESTAMP('10','WW');
|
|
|
|
|
SELECT TO_TIMESTAMP('53','WW');
|
|
|
|
|
SELECT TO_TIMESTAMP('54','WW');
|
|
|
|
|
--D
|
|
|
|
|
SELECT TO_TIMESTAMP('0','D');
|
|
|
|
|
SELECT TO_TIMESTAMP('1','D');
|
|
|
|
|
SELECT TO_TIMESTAMP('4','D');
|
|
|
|
|
SELECT TO_TIMESTAMP('7','D');
|
|
|
|
|
SELECT TO_TIMESTAMP('8','D');
|
|
|
|
|
--WW & D YYYY
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-50-0','YYYY-WW-D');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-50-1','YYYY-WW-D');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-50-4','YYYY-WW-D');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-50-7','YYYY-WW-D');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-50-8','YYYY-WW-D');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-0-4','YYYY-WW-D');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-1-4','YYYY-WW-D');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-50-4','YYYY-WW-D');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-53-4','YYYY-WW-D');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-54-4','YYYY-WW-D');
|
|
|
|
|
--US
|
|
|
|
|
SELECT TO_TIMESTAMP('-1','US');
|
|
|
|
|
SELECT TO_TIMESTAMP('0','US');
|
|
|
|
|
SELECT TO_TIMESTAMP('99999','US');
|
|
|
|
|
SELECT TO_TIMESTAMP('999999','US');
|
|
|
|
|
SELECT TO_TIMESTAMP('1000000','US');
|
|
|
|
|
--W
|
|
|
|
|
SELECT TO_TIMESTAMP('-1','W');
|
|
|
|
|
SELECT TO_TIMESTAMP('0','W');
|
|
|
|
|
SELECT TO_TIMESTAMP('1','W');
|
|
|
|
|
SELECT TO_TIMESTAMP('5','W');
|
|
|
|
|
SELECT TO_TIMESTAMP('6','W');
|
|
|
|
|
--DCH_check
|
|
|
|
|
select TO_TIMESTAMP('13' ,'HH');
|
|
|
|
|
select TO_TIMESTAMP('25','HH24');
|
|
|
|
|
select TO_TIMESTAMP('62','MI');
|
|
|
|
|
select TO_TIMESTAMP('62','SS');
|
|
|
|
|
select TO_TIMESTAMP('86400','SSSSS');
|
|
|
|
|
select TO_TIMESTAMP('8','D');
|
|
|
|
|
select TO_TIMESTAMP('32','DD');
|
|
|
|
|
select TO_TIMESTAMP('367','DDD');
|
|
|
|
|
select TO_TIMESTAMP('36','MM');
|
|
|
|
|
select TO_TIMESTAMP('1000','MS');
|
|
|
|
|
select TO_TIMESTAMP('54','WW');
|
|
|
|
|
select TO_TIMESTAMP('7','W');
|
|
|
|
|
select TO_TIMESTAMP('5373485','J');
|
|
|
|
|
select TO_TIMESTAMP('-1','US');
|
|
|
|
|
select TO_TIMESTAMP('10000','SYYYY');
|
|
|
|
|
select TO_TIMESTAMP('10000','RR');
|
|
|
|
|
|
|
|
|
|
SHOW nls_timestamp_format;
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('0097/Feb/16 --> 08:14:30', 'YYYY/Mon/DD --> HH:MI:SS');
|
|
|
|
|
SELECT TO_TIMESTAMP('97/2/16 8:14:30', 'FMYYYY/FMMM/FMDD FMHH:FMMI:FMSS');
|
|
|
|
|
SELECT TO_TIMESTAMP('1985 January 12', 'YYYY FMMonth DD');
|
|
|
|
|
SELECT TO_TIMESTAMP('My birthday-> Year: 1976, Month: May, Day: 16',
|
|
|
|
|
'"My birthday-> Year" YYYY, "Month:" FMMonth, "Day:" DD');
|
|
|
|
|
SELECT TO_TIMESTAMP('1,582nd VIII 21', 'Y,YYYth FMRM DD');
|
|
|
|
|
SELECT TO_TIMESTAMP('15 "text between quote marks" 98 54 45',
|
|
|
|
|
E'HH24 "\\text between quote marks\\"" YY MI SS');
|
|
|
|
|
SELECT TO_TIMESTAMP('05121445482000', 'MMDDHH24MISSYYYY');
|
|
|
|
|
SELECT TO_TIMESTAMP('2000January09Sunday', 'YYYYFMMonthDDFMDay');
|
|
|
|
|
SELECT TO_TIMESTAMP('97/Feb/16', 'YYMonDD');
|
|
|
|
|
SELECT TO_TIMESTAMP('19971116', 'YYYYMMDD');
|
|
|
|
|
SELECT TO_TIMESTAMP('20000-1116', 'YYYY-MMDD');
|
|
|
|
|
SELECT TO_TIMESTAMP('9-1116', 'Y-MMDD');
|
|
|
|
|
SELECT TO_TIMESTAMP('95-1116', 'YY-MMDD');
|
|
|
|
|
SELECT TO_TIMESTAMP('995-1116', 'YYY-MMDD');
|
|
|
|
|
SELECT TO_TIMESTAMP('2005426', 'YYYYWWD');
|
|
|
|
|
SELECT TO_TIMESTAMP('2005300', 'YYYYDDD');
|
|
|
|
|
SELECT TO_TIMESTAMP('2005527', 'IYYYIWID');
|
|
|
|
|
SELECT TO_TIMESTAMP('005527', 'IYYIWID');
|
|
|
|
|
SELECT TO_TIMESTAMP('05527', 'IYIWID');
|
|
|
|
|
SELECT TO_TIMESTAMP('5527', 'IIWID');
|
|
|
|
|
SELECT TO_TIMESTAMP('2005364', 'IYYYIDDD');
|
|
|
|
|
SELECT TO_TIMESTAMP('20050302', 'YYYYMMDD');
|
|
|
|
|
SELECT TO_TIMESTAMP('2005 03 02', 'YYYYMMDD');
|
|
|
|
|
SELECT TO_TIMESTAMP(' 2005 03 02', 'YYYYMMDD');
|
|
|
|
|
SELECT TO_TIMESTAMP(' 20050302', 'YYYYMMDD');
|
|
|
|
|
|
|
|
|
|
SHOW nls_timestamp_format;
|
|
|
|
|
select TO_TIMESTAMP('9999-3-4 13:2:3.234015'); -- error: ERROR: invalid data for "hour = 13" ,value must be between 1 and 12
|
|
|
|
|
|
|
|
|
|
SHOW nls_timestamp_format;
|
|
|
|
|
-- with default
|
|
|
|
|
SELECT TO_TIMESTAMP('1,582nd VIII 66' DEFAULT NULL ON CONVERSION ERROR);
|
|
|
|
|
SELECT TO_TIMESTAMP('1,582nd VIII 66' DEFAULT '1,582nd VIII 21' ON CONVERSION ERROR);
|
|
|
|
|
select TO_TIMESTAMP('9999-3-4 13:2:3.234015' DEFAULT NULL ON CONVERSION ERROR);
|
|
|
|
|
select TO_TIMESTAMP('9999-3-4 13:2:3.234015' DEFAULT '2012-11-15' ON CONVERSION ERROR);
|
|
|
|
|
select TO_TIMESTAMP('10000-3-4 13:2:3.234015' DEFAULT NULL ON CONVERSION ERROR);
|
|
|
|
|
select TO_TIMESTAMP('10000-3-4 13:2:3.234015' DEFAULT '2012-11-15' ON CONVERSION ERROR);
|
|
|
|
|
select TO_TIMESTAMP('10000-3-4 13:2:3.234015' DEFAULT 'abc' ON CONVERSION ERROR);
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-245-2' DEFAULT 3.14 ON CONVERSION ERROR); -- error: ERROR: invalid data for "month = 14" ,value must be between 1 and 12
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-245-2' DEFAULT '2010-01-01 01:00:00' ON CONVERSION ERROR);
|
|
|
|
|
|
|
|
|
|
---------------------------------------------
|
|
|
|
|
--------- 24-hour clock(DEFAULT FMT) --------
|
|
|
|
|
---------------------------------------------
|
|
|
|
|
SET nls_timestamp_format = 'YYYY-MM-DD HH:MI:SS';
|
|
|
|
|
SHOW nls_timestamp_format;
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('1998');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28 01');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28 01:02');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28 01:02:03');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28 01:02:03.12');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28 01:02:03.12 AM');
|
|
|
|
|
SELECT TO_TIMESTAMP('1998-12-28 11:12:13 PM');
|
|
|
|
|
SELECT TO_TIMESTAMP('01');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('01');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 11');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 11:12');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 11:12:13');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 11:12:13.12');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 11:12:13.12 PM');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 11:12:13 PM');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 16:12:13');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 12:55:66');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 24:12:13');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 25:55:66');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 60:12:13');
|
|
|
|
|
SELECT TO_TIMESTAMP('01-Sep-1998 12:60:00');
|
|
|
|
|
|
|
|
|
|
---------------------------------------------
|
|
|
|
|
--------- DEFINE FMT --------
|
|
|
|
|
---------------------------------------------
|
|
|
|
|
|
|
|
|
|
-- SET DateStyle TO 'ISO, MDY';
|
|
|
|
|
select TO_TIMESTAMP('23 01 01','hh24 mi ss');
|
|
|
|
|
select TO_TIMESTAMP('20150101 232323','yyyymmdd hh24miss');
|
|
|
|
|
select TO_TIMESTAMP('20150101 232323','yyyymmdd hh24miss');
|
|
|
|
|
SELECT TO_TIMESTAMP('0','HH24');
|
|
|
|
|
SELECT TO_TIMESTAMP('23','HH24');
|
|
|
|
|
SELECT TO_TIMESTAMP('24','HH24');
|
|
|
|
|
SELECT TO_TIMESTAMP('24','H24');
|
|
|
|
|
select TO_TIMESTAMP('10','H24');
|
|
|
|
|
select TO_TIMESTAMP('10','H24');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('1,582nd VIII 21', 'Y,YYYth FMRM DD');
|
|
|
|
|
SELECT TO_TIMESTAMP('-2012-2/3,21.15;36:18','YYYY-MM/DD,HH24.MI;SS:FF');
|
|
|
|
|
SELECT TO_TIMESTAMP('-1-2/3,21.15;36:18','YYYY-MM/DD,HH24.MI;SS:FF');
|
|
|
|
|
SELECT TO_TIMESTAMP('0-2/3,21.15;36:18','YYYY-MM/DD,HH24.MI;SS:FF');
|
|
|
|
|
SELECT TO_TIMESTAMP('9999-2/3,21.15;36:18','YYYY-MM/DD,HH24.MI;SS:FF');
|
|
|
|
|
SELECT TO_TIMESTAMP('10000-2/3,21.15;36:18','YYYY-MM/DD,HH24.MI;SS:FF');
|
|
|
|
|
|
|
|
|
|
select TO_TIMESTAMP('-4713-3-4 13:2:3.234015', 'syyyy-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('-4712-3-4 13:2:3.234015', 'syyyy-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('0-3-4 13:2:3.234015', 'syyyy-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('9999-3-4 13:2:3.234015', 'syyyy-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('10000-3-4 13:2:3.234015', 'syyyy-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
|
|
|
|
|
select TO_TIMESTAMP('-4713-3-4 13:2:3.234015', 'SYYYY-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('-4712-3-4 13:2:3.234015', 'SYYYY-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('0-3-4 13:2:3.234015', 'SYYYY-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('9999-3-4 13:2:3.234015', 'SYYYY-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('10000-3-4 13:2:3.234015', 'SYYYY-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
|
|
|
|
|
select TO_TIMESTAMP('-4713-3-4 13:2:3.234015', 'RR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('-4712-3-4 13:2:3.234015', 'RR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('-1-3-4 13:2:3.234015', 'RR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('0-3-4 13:2:3.234015', 'RR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('1-3-4 13:2:3.234015', 'RR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('9999-3-4 13:2:3.234015', 'RR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('10000-3-4 13:2:3.234015', 'RR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
|
|
|
|
|
select TO_TIMESTAMP('-4713-3-4 13:2:3.234015', 'RRRR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('-4712-3-4 13:2:3.234015', 'RRRR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('-1-3-4 13:2:3.234015', 'RRRR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('0-3-4 13:2:3.234015', 'RRRR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('1-3-4 13:2:3.234015', 'RRRR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('9999-3-4 13:2:3.234015', 'RRRR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('10000-3-4 13:2:3.234015', 'RRRR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
|
|
|
|
|
select TO_TIMESTAMP('-4713-3-4 13:2:3.234015', 'rr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('-4712-3-4 13:2:3.234015', 'rr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('-1-3-4 13:2:3.234015', 'rr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('0-3-4 13:2:3.234015', 'rr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('1-3-4 13:2:3.234015', 'rr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('9999-3-4 13:2:3.234015', 'rr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('10000-3-4 13:2:3.234015', 'rr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
|
|
|
|
|
select TO_TIMESTAMP('-4713-3-4 13:2:3.234015', 'rrrr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('-4712-3-4 13:2:3.234015', 'rrrr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('-1-3-4 13:2:3.234015', 'rrrr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('0-3-4 13:2:3.234015', 'rrrr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('1-3-4 13:2:3.234015', 'rrrr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('9999-3-4 13:2:3.234015', 'rrrr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('10000-3-4 13:2:3.234015', 'rrrr-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
|
|
|
|
|
-- Mixture of date conventions (ISO week and Gregorian):
|
|
|
|
|
SELECT TO_TIMESTAMP('2005527', 'YYYYIWID'); -- error: Do not mix Gregorian and ISO week date conventions in a formatting template.
|
|
|
|
|
-- Insufficient characters in the source string:
|
|
|
|
|
SELECT TO_TIMESTAMP('19971', 'YYYYMMDD'); -- error: Field requires 2 characters, but only 1 remain.
|
|
|
|
|
-- Insufficient digit characters for a single node:
|
|
|
|
|
SELECT TO_TIMESTAMP('19971)24', 'YYYYMMDD'); -- error; invalid value "1)" for "MM"
|
|
|
|
|
-- Value clobbering:
|
|
|
|
|
SELECT TO_TIMESTAMP('1997-11-Jan-16', 'YYYY-MM-Mon-DD'); -- error; conflicting values for "Mon" field in formatting string
|
|
|
|
|
-- Non-numeric input:
|
|
|
|
|
SELECT TO_TIMESTAMP('199711xy', 'YYYYMMDD'); -- error: invalid value "xy" for "DD"
|
|
|
|
|
-- Input that doesn't fit in an int:
|
|
|
|
|
SELECT TO_TIMESTAMP('10000000000', 'FMYYYY'); -- error: value for "YYYY" in source string is out of range.
|
|
|
|
|
SELECT TO_TIMESTAMP('2010-01-01 00:00:00','yyyy-mm-dd hh24:mi:ss');
|
|
|
|
|
|
|
|
|
|
SELECT TO_TIMESTAMP('1,582nd VIII 66' DEFAULT '1,582nd VIII 21' ON CONVERSION ERROR, 'Y,YYYth FMRM DD');
|
|
|
|
|
SELECT TO_TIMESTAMP('1,582nd VIII 66' DEFAULT 'abcdefg' ON CONVERSION ERROR, 'Y,YYYth FMRM DD');
|
|
|
|
|
SELECT TO_TIMESTAMP('2012-245-2' DEFAULT 3.14 ON CONVERSION ERROR,'YYYY-DDD-DD');
|
|
|
|
|
select TO_TIMESTAMP('2012-11-15' DEFAULT NULL ON CONVERSION ERROR,'YYYY-MM-DD');
|
|
|
|
|
select TO_TIMESTAMP('9999-3-4 13:2:3.234015' DEFAULT '2012-11-15' ON CONVERSION ERROR, 'RR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('9999-3-4 13:2:3.234015' DEFAULT NULL ON CONVERSION ERROR, 'RR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('10000-3-4 13:2:3.234015' DEFAULT '2012-11-15' ON CONVERSION ERROR, 'RR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('10000-3-4 13:2:3.234015' DEFAULT 3.14 ON CONVERSION ERROR, 'RR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
select TO_TIMESTAMP('10000-3-4 13:2:3.234015' DEFAULT NULL ON CONVERSION ERROR, 'RR-mm-dd hh24:mi:ss.ff');
|
|
|
|
|
|
|
|
|
|
-- USE TO_TIMESTAMP CHECKDAYS
|
|
|
|
|
SELECT (TO_TIMESTAMP('12:59:04', 'hh24:mi:ss') - TO_TIMESTAMP('11:59:04', 'hh24:mi:ss.sssss')) * 24 *3600;
|
|
|
|
|
SELECT (TO_TIMESTAMP('18:59:04', 'hh24:mi:ss') - TO_TIMESTAMP('11:59:04', 'hh24:mi:ss.sssss')) + (TO_TIMESTAMP('15:59:04', 'hh24:mi:ss') - TO_TIMESTAMP('11:59:04', 'hh24:mi:ss.sssss'));
|
|
|
|
|
SELECT (TO_TIMESTAMP('23:59:04', 'hh24:mi:ss') - TO_TIMESTAMP('00:34:04', 'hh24:mi:ss.sssss')) + (TO_TIMESTAMP('22:38:13', 'hh24:mi:ss') - TO_TIMESTAMP('02:45:53', 'hh24:mi:ss.sssss'));
|
|
|
|
|
--DAY > 0 && TIME < 0
|
|
|
|
|
SELECT (TO_TIMESTAMP('2012-8-5 23:59:04', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-1 23:34:04', 'YYYY-MM-DD hh24:mi:ss.sssss')) - (TO_TIMESTAMP('2012-8-5 22:38:13', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-4 02:45:53', 'YYYY-MM-DD hh24:mi:ss.sssss'));
|
|
|
|
|
SELECT ((TO_TIMESTAMP('2012-8-5 23:59:04', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-1 23:34:04', 'YYYY-MM-DD hh24:mi:ss.sssss')) - (TO_TIMESTAMP('2012-8-5 22:38:13', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-2 02:45:53', 'YYYY-MM-DD hh24:mi:ss.sssss'))) * 2;
|
|
|
|
|
--DAY < 0 && TIME > 0
|
|
|
|
|
SELECT (TO_TIMESTAMP('2012-8-5 23:59:04', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-5 00:34:04', 'YYYY-MM-DD hh24:mi:ss.sssss')) - (TO_TIMESTAMP('2012-8-8 22:38:13', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-4 20:45:53', 'YYYY-MM-DD hh24:mi:ss.sssss'));
|
|
|
|
|
SELECT ((TO_TIMESTAMP('2012-8-5 23:59:04', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-5 00:34:04', 'YYYY-MM-DD hh24:mi:ss.sssss')) - (TO_TIMESTAMP('2012-8-8 22:38:13', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-7 20:45:53', 'YYYY-MM-DD hh24:mi:ss.sssss'))) * 2;
|
|
|
|
|
--DAY > 0 && TIME > 0
|
|
|
|
|
SELECT (TO_TIMESTAMP('2012-8-5 23:59:04', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-1 00:34:04', 'YYYY-MM-DD hh24:mi:ss.sssss')) + (TO_TIMESTAMP('2012-8-8 22:38:13', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-4 00:11:23', 'YYYY-MM-DD hh24:mi:ss.sssss'));
|
|
|
|
|
--DAY = 0 && TIME > 0
|
|
|
|
|
SELECT (TO_TIMESTAMP('2012-8-5 23:59:04', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-5 00:34:04', 'YYYY-MM-DD hh24:mi:ss.sssss')) - (TO_TIMESTAMP('2012-8-8 00:38:13', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-8 23:11:23', 'YYYY-MM-DD hh24:mi:ss.sssss'));
|
|
|
|
|
--DAY < 0 && TIME < 0
|
|
|
|
|
SELECT (TO_TIMESTAMP('2012-8-5 00:59:04', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-5 23:34:04', 'YYYY-MM-DD hh24:mi:ss.sssss')) - (TO_TIMESTAMP('2012-8-8 23:38:13', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-3 00:11:23', 'YYYY-MM-DD hh24:mi:ss.sssss'));
|
|
|
|
|
--DAY = 0 && TIME < 0
|
|
|
|
|
SELECT (TO_TIMESTAMP('2012-8-5 00:59:04', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-5 23:34:04', 'YYYY-MM-DD hh24:mi:ss.sssss')) - (TO_TIMESTAMP('2012-8-8 23:38:13', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-8 00:11:23', 'YYYY-MM-DD hh24:mi:ss.sssss'));
|
|
|
|
|
--DAY > 0 && TIME = 0
|
|
|
|
|
SELECT (TO_TIMESTAMP('2012-8-8 00:59:04', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-1 00:59:04', 'YYYY-MM-DD hh24:mi:ss.sssss')) - (TO_TIMESTAMP('2012-8-8 00:11:23', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-8 00:11:23', 'YYYY-MM-DD hh24:mi:ss.sssss'));
|
|
|
|
|
--DAY < 0 && TIME = 0
|
|
|
|
|
SELECT (TO_TIMESTAMP('2012-8-8 00:59:04', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-8 00:59:04', 'YYYY-MM-DD hh24:mi:ss.sssss')) + (TO_TIMESTAMP('2012-8-3 00:11:23', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-8 00:11:23', 'YYYY-MM-DD hh24:mi:ss.sssss'));
|
|
|
|
|
--DAY = 0 && TIME = 0
|
|
|
|
|
SELECT (TO_TIMESTAMP('2012-8-8 00:59:04', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-8 00:59:04', 'YYYY-MM-DD hh24:mi:ss.sssss')) + (TO_TIMESTAMP('2012-8-8 00:11:23', 'YYYY-MM-DD hh24:mi:ss') - TO_TIMESTAMP('2012-8-8 00:11:23', 'YYYY-MM-DD hh24:mi:ss.sssss'));
|