CREATE_TIME类型是Date
按正常的查询:select * from t_convert where create_time='2009-12-6 11:34:10'会出现“文字与格式不匹配”
只能进行类型转换:select * from t_convert t where create_time=to_date('2009-12-6-11-34-10','yyyy-MM-dd HH24:mi :ss')
之所以这样写是因为sql语句不区分大小写,MM和mm会被认为是相同格式的代码,所以Oracle用mi代替mm(分钟)。
另外HH要写成HH24 的形式(24小时制的形式)。
下面我们看一下不同格式产生的结果:
select to_char(sysdate,'yyyy-MM-dd HH:mm:ss') from dual //时间不是24小时制 分钟显示成月份
2010-10-08 02:10:58
select to_char(sysdate,'yyyy-MM-dd HH24:mm:ss') from dual // 时间是24小时制 分钟显示成月份
2010-10-08 14:10:14
select to_char(sysdate,'yyyy-MM-dd HH24:mi:ss') from dual //时间是24小时制 分钟显示成分钟
2010-10-08 14:22:26