日期:2014-05-17  浏览次数:20894 次

怎么从一个yyyy/mm/dd hh:mm:ss格式的日期里提取到yy/mm/dd这个格式
比如:2012/1/10 4:00:00

怎么得到2012/1/10?


还有判断2个日期格式相等,是用=好吗?


如果判断1个日期范围在另一个范围内,是用<好吗?比如:
TO_DATE('2012/1/10','yyyy/mm/dd')<Table.time<TO_DATE('2012/12/10','yyyy/mm/dd')

------解决方案--------------------
SQL code
select to_char(to_date('2012/1/10 4:00:00', 'yyyy/mm/dd hh24:mi:ss'), 'yyyy/mm/dd') tar_date
from dual;

------解决方案--------------------
Select trunc(时间字段名) from tb --这个不准确
select to_char(时间字段名,'yyyy/mm/dd') from tb --这个准确

select * from tb where trunc(时间字段名) between '2012/01/10' and '2012/12/10' --这个不准确
select * from tb where to_char(时间字段名,'yyyy/mm/dd') between '2012/01/10' and '2012/12/10' --这个准确


------解决方案--------------------
探讨

我这个2012/1/10 4:00:00,已经是日期格式了。

另外一个是字符型的,我想用to_date('20120311','yyyy-mm-dd'),转成日期型的和前面的值比较,行吗?