我想写一个查询语句
select * from employees where hire_date='2009-7-23 上午 10:20:07';
查询出相对应的一条记录
可是报错了,应该怎么改啊???
谢谢了

解决方案 »

  1.   

    你表中hire_date字段的数据是以什么形式存储的? 拿一些数据出来看看
      

  2.   

    加个to_dateselect * from employees where hire_date=TO_DATE('2009-7-23 上午 10:20:07');
      

  3.   

    select * from employees where hire_date=TO_DATE('2009-7-23 上午 10:20:07', 'yyyy-mm-dd hh:mi:ss')
      

  4.   

    我建议把客户短sql工具的字符集,时间格式什么的设置的数据库一致。
    避免不必要的麻烦。
      

  5.   

    或者先执行一句
    ALTER SESSION SET NLS_DATE_FORMAT='YYYY-MM-DD AM HH:MI:SS';
      

  6.   

    怀疑字段是日期型的
     to_date('2009-7-23 上午 10:20:07','yyyy-mm-dd AM hh:mi:ss')
      

  7.   

    select to_date('2009-7-23 上午 10:20:07','yyyy-mm-dd am hh:mi:ss') from dual;