日期格式化需要注意的点

问题描述: 在开发过程中遇到日期转换的时候 发现的关于日期转换中较为纳闷的事情…

发现 Oracle 中 时间转换 跟平时用的 不是很一样 …举个栗子:
MySQL中日期转换 [ %Y表示年 %m表示月份 %d表示天 %h表示小时 %i表示分钟 %s表示秒 ]执行select date_format(sysdate(),’%Y-%m-%d %h:%i:%s’) from table ; 结果 为2022-08-05 10:11:23;
SqlServer数据库中通过CONVERT()函数进行 日期格式化; CONVERT(varchar(45), GETDATE(), A) 其中A是由一些代码决定,(为了不占用过多的字数 这个大家可以自行查询),
Oracle数据库中格式化日期也存在自己的定义,由于 oracle数据库中的SQL语句是不区分你大小写的,就来了 [ yyyy代表年份 mm表示月份 dd表示天 hh24表示24小时制的时(非24小时制去掉24即可) mi代表分钟 ss表示秒 ],打个比方:to_char(‘sysdate’,‘yyyy-mm-dd hh24:mi:ss’),这里很多人由于在编码中经常使用 yyyy-MM-dd HH:mm:ss 来作为日期格式化的一个格式,很容易搞混肴 ,日期要求不是很严格的时候 就不会发现自己把oracle里边的函数用错了,导致日期对不上。
Java编码中使用的DateFormat(),这个里边你的pattern定义则是 [ yyyy代表年份 MM表示月份 dd表示天 HH表示24时制 hh标识12小时制 mm代表分钟 ss表示秒 ],跟以上的用法还是有一定的差别。
总结:在三款我们常用的关系型数据库(MySQL、SQL server、Oracle) 中存在着作用相同却有着不同的使用方式的函数,以至于我们在日常使用中很容易混肴,这里是要注意的。
愿琴瑟在御,岁月静好。几分厚重,些许惆怅。 我们下次再会!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值