to_date , to_char
select sum(t.paid_fee) from order_payment_log t where to_char(to_date(t.edit_time, 'yyyy-MM-dd HH24:mi:ss'), 'yyyy-MM-dd') = to_char(sysdate, 'yyyy-MM-dd') and t.paid_state = 'Y';
to_char
to_char:将日期转换为字符串,
to_char(to_date(t.edit_time, 'yyyy-MM-dd HH24:mi:ss'),'yyyy-MM-dd')
将to_date 后的日期:2018-11-11 09:44:52转化为2018-11-11
to_char(sysdate, 'yyyy-MM-dd')将系统当前时间2018-11-11 09:44:52转为2018-11-11
to_date
to_date:将字符串转换为日期,
to_date(t.edit_time, 'yyyy-MM-dd HH24:mi:ss')
edit_time和yyyy-MM-dd HH24:mi:ss 格式要对应起来,否则报 文字与格式字符串不匹配错误
指定特定时间:
select sum(t.paid_fee)
from order_payment_log t
where to_char(to_date(t.edit_time, 'yyyy-MM-dd HH24:mi:ss'),
'yyyy-MM-dd') = '2018-11-10'
and t.paid_state = 'Y';
to_char(sysdate, 'yyyy-MM-dd')目的就是手动的将时间定为:'2018-11-10'(指定的时间)
无为而治