Oracle日期和字符串转换to_date() 与 to_char() 区别

date转string

A是date格式直接转换为字符串格式即varchar2

to_char(A, 'yyyy-mm-dd hh24:mi:ss')

B是字符串varchar2格式先转换为date格式再转换为字符串格式

改变格式由yyyy-MM-dd改为yyyyMMdd

to_char(to_date(B, 'yyyy-MM-dd'),'yyyyMMdd')

string转date

前者为字符串,后者为转换日期格式,两个参数的格式必须匹配,否则会报错。
 

to_date('2018-01-09','yyyy-MM-dd')

to_date('2018-02-23 15:33:21','yyyy-MM-dd HH24:mi:ss')

string格式的to_timestamp数据如 "19-4月 -17 12.00.00.000000000 上午"转换为date格式。

to_date(to_char(to_timestamp(T1.CLNDSYRQ, 'dd-mon-rr hh.mi.ss.ff am'),'yyyyMMdd'),'yyyyMMdd')

date和timestamp之间的相互转换

to_char来转换timestamp-->date:

select to_date(to_char(systimestamp,'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') from dual

date -->timestamp:

select to_timestamp(to_char(sysdate,'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') from dual

java中转换

//String—>Date
String  time = “2018-01-09”;
SimpleDateFormat sdf= new SimpleDateFormat("yyyy-MM-dd");
Date date = sdf.parse(time);

//Date—>String
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");  
Date date=new Date();  
String str=sdf.format(date); 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值