Conversion of Oracle TO_CHAR(datetime) with format string to MySQL

前端之家收集整理的这篇文章主要介绍了Conversion of Oracle TO_CHAR(datetime) with format string to MySQL前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Conversion of Oracle TO_CHAR(datetime) with format string to MysqL

The Oracle TO_CHAR(datetime,fmt) function converts datetime values to a string in the format specified by the fmt option.

MysqL has the DATE_FORMAT function that allows datetime values converting to a string in the specified format.

sqlWays converts the Oracle TO_CHAR function to the MysqL DATE_FORMAT function and converts elements of format string from Oracle to corresponding specifier in MysqL as specified in the following table

TABLE 56.Conversion of Oracle TO_CHAR(datetime) with format string to MysqL
Mapping of datetime format specifiers between MysqL and Oracle
Oracle (independently from register)
Description
%a
DY
Abbreviated weekday name (Sun..Sat)
%b
MON
Abbreviated month name (Jan..Dec)
%D
-
Day of the month with English suffix (0th,1st,2nd,3rd,etc.)
%d
%e
DD
Day of the month,numeric ((00..31) and (0..31))
%j
DDD
Day of year (001..366)
%m
%c
MM
Month,numeric ((00..12) and (0..12))
%M
MONTH
Month name (January..December)
%f
-
Microseconds (000000..999999)
%i
MI
Minutes,numeric (00..59)
%h
%I
%l
HH
HH12
Hour ((01..12) and (1..12))
%H
%k
HH24
Hour ((00..23) and (0..23))
%p
AM
PM
AM or PM
%r
-
Time,12-hour (hh:mm:ss followed by AM or PM)
%S
%s
SS
Seconds ((00..59) and (0..59))
%T
-
Time,24-hour (hh:mm:ss)
%u
WW
IW
Week (00..53),where Monday is the first day of week
%U
-
Week (00..53),where Sunday is the first day of week
%V
-
Week (01..53),where Sunday is the first day of week,used with %X
%v
WW
IW
Week (01..53),where Monday is the first day of week,used with %x
%W
DAY
Weekday name (Sunday..Saturday)
%w
-
Day of the week (0=Sunday .. 6=Saturday)
%X
-
Year for the week,where Sunday is the first day of the week,numeric 4 digits; used with %V
%x
-
Year for the week,where Monday is the first day of the week,numeric 4 digits; used with %v
%Y
YYYY
SYYYY
IYYY
Year,numeric,4 digits
%y
YY
IYY
Year,2 digits
-
J
Julian day; the number of days since January 1,4712 BC.
-
Q
Quarter of year (1,2,3,4; JAN-MAR = 1).
-
RR
Given a year with 2 digits:
� If the year is <50 and the last 2 digits of the current year are >=50,then the first 2 digits of the returned year are 1 greater than the first 2 digits of the current year.
� If the year is >=50 and the last 2 digits of the current year are <50,then the first 2 digits of the returned year are 1 less than the first 2 digits of the current year.
-
RRRR
Round year. Accepts either 4-digit or 2-digit input. If 2-digit,provides the same return as RR. If you don't want this functionality,then simply enter the 4-digit year.
-
W
Week of month (1-5) where week 1 starts on the first day of the month and ends on the seventh.
-
SSSSS
Seconds past midnight (0 - 86399).
-
X
Local radix character.
-
Y,YYY
Year with comma in the position.
-
YEAR
SYEAR
Year,spelled out; "S" prefixes BC dates with "-".
-
YYY
3 digits of year.
-
Y
1 digit of year.
-
IY
2 digits of ISO year.
-
I
1 digit of ISO year.
-
AD
A.D.
AD indicator with or without periods.
-
BC
B.C.
BC indicator with or without periods.
-
CC
SCC
One greater than the first two digits of a four-digit year; "S" prefixes BC dates with "-".
For example,'20' from '1900'.
-
D
Day of week (1 - 7).
-
A.M.
P.M.
Meridian indicator with periods.
-
TZH
Time zone hour.
-
TZM
Time zone minute.
-
TZR
Time zone region information.
-
RM

TABLE 57.Example of Conversion
Oracle
create procedure sp_to_char_date_format
as
begin
-- GET ACTUAL TIME AND DATE
select to_char(sysdate,'DD-MON-YYYY:HH24:MI') 
from dual;
end; 
create procedure sp_to_char_date_format()
begin
-- GET ACTUAL TIME AND DATE
select  DATE_FORMAT(CURRENT_TIMESTAMP,'%e-%M-
%Y:%H:%i')  from dual;
end;

猜你在找的Oracle相关文章