欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Mysql与Oracle常用时间格式的转换

程序员文章站 2022-04-21 17:24:06
...

Oracle与Mysql在传入时间的式上大不相同,而自己去找又花了很久的时间。所以想把它记下来。 1.oracle中 “TO_CHAR (date, 'yyyy-mm-IW-dd-Day')” 在这个字串中,看得出Oracle常用的一些时间式,是数据库为我们提供的一些基本数据 年:yyyy(表示年的位数)

Oracle与Mysql在传入时间的格式上大不相同,而自己去找又花了很久的时间。所以想把它记下来。

1.oracle中 “TO_CHAR (date, 'yyyy-mm-IW-dd-Day')”

在这个字串中,看得出Oracle常用的一些时间格式,是数据库为我们提供的一些基本数据

年:yyyy(表示年的位数)

月:mm(1..12)

周:IW(一年中对应的周,其中形式为(01..53

天:dd(每天对应月中的数字)

星期:Day (形式为“星期一..星期日")

里面的这些字段可以随意的组合,Oracle中得到的Day形式为“星期一、星期日等”

2.mysql中获取时间字串为 “DATE_FORMAT(date,'%Y-%m-%v-%d-%W')”

这个字串为mysql为我们提供的一些时间格式但是与Oracle的时间数据大有不同

年:%Y(4个数字,eg:2015) %y(2个数字,eg:15)

月:%m (数字形式 (00..12)) %M(英文,如January..December

周:%v(数字形式为(01..53)是以Monday为周的第一条) %V(数字形式为(01..53是以Sunday为周的第一条

天:%d (数字形式为(00..31)) %D(数字形式为(0th, 1st, 2nd, 3rd, …))

星期:%W (英文形式(Monday..Sunday))

常用到的一些时间格式就差不多以上这些了,另外还涉及到它们的一些函数

比如Oracle中的to_char()来获取到时间的不同的形式

Mysql中data_format()来获取到时间的不同的形式,

UNIX_TIMESTAMP()来得到两个日期的秒差。

还有一个比较让我记忆深刻的一个问题:

在oracle中对星期进行排序 一直郁闷的是不能按照我的想法进行排序,才发现Oracle中是以拼音来进行排序的,所以一直乱,过后想了一个办法,在星期"Day"的前面加入一个天“dd”他们对应的时间是一样,但是"dd"是数字形式可以进行排序,最后可以把你想要的“星期”取出来。ok问题解决了