sql - Oracle: Convert Full Date to a Different Date Format -
in oracle database,i have column of type varchar2 in table has entry this:
wednesday, august 3, 2016 12:00:00 cest
i wish convert 08-03-2016
i have tried use to_date followed to_char fails. guidance helpful.
try one:
select to_timestamp( regexp_substr('wednesday, august 3, 2016 12:00:00 cest', '\w+ +\d+, \d{4} \d{2}:\d{2}:\d{2} (a|p)m'), 'fmmonth dd, fmyyyy hh:mi:ss am') dual;
resp.
select to_char( to_timestamp( regexp_substr('wednesday, august 3, 2016 12:00:00 cest', '\w+ +\d+, \d{4} \d{2}:\d{2}:\d{2} (a|p)m'), 'fmmonth dd, fmyyyy hh:mi:ss am'), 'mm-dd-yyyy') dual;
in case need day no time information had luck, because cest
ambiguous, see this:
select tzabbrev, tz_offset(tzname), tzname v$timezone_names tzabbrev = 'cest' order 2; tzabbrev tz_offset(tzname) tzname ======== ================== ============ cest +01:00 africa/algiers cest +01:00 europe/lisbon cest +01:00 portugal cest +02:00 atlantic/jan_mayen cest +02:00 cet cest +02:00 europe/amsterdam cest +02:00 europe/belgrade cest +02:00 europe/berlin cest +02:00 europe/bratislava cest +02:00 europe/brussels cest +02:00 europe/budapest cest +02:00 europe/copenhagen cest +02:00 europe/gibraltar cest +02:00 arctic/longyearbyen cest +02:00 africa/tunis cest +02:00 africa/tripoli cest +02:00 africa/ceuta cest +02:00 poland cest +02:00 libya cest +02:00 europe/zurich cest +02:00 europe/zagreb cest +02:00 europe/warsaw cest +02:00 europe/vienna cest +02:00 europe/vatican cest +02:00 europe/tirane cest +02:00 europe/ljubljana cest +02:00 europe/luxembourg cest +02:00 europe/madrid cest +02:00 europe/monaco cest +02:00 europe/oslo cest +02:00 europe/paris cest +02:00 europe/podgorica cest +02:00 europe/prague cest +02:00 europe/rome cest +02:00 europe/san_marino cest +02:00 europe/sarajevo cest +02:00 europe/skopje cest +02:00 europe/stockholm cest +03:00 europe/zaporozhye cest +03:00 europe/tallinn cest +03:00 europe/vilnius cest +03:00 europe/minsk cest +03:00 europe/kaliningrad cest +03:00 europe/sofia cest +03:00 europe/uzhgorod cest +03:00 europe/athens cest +03:00 europe/riga
thus not trivial determine correct time zone.
Comments
Post a Comment