我现在有一张表 里面有一个时间字段 类型是vachar2(20) ,如何按时间段进行数据的查询,这样的SQL如何写?
解决方案 »
- PLSQL DEVELOPER 单步调试问题
- 关于在两个Oracle数据库中建立触发器的问题
- oracle的客户端
- 在tru64 unix 下安装oracle8.1.5时出现提示 请高手进来看一看。在线等!!!!
- 帮个忙吧,发个CNOUG(http://www.oracle.com.cn/)的邀请码,谢谢!!
- 关于昨天提问解答的不理解,麻烦哪位高手解释下
- 存储过程小问题
- 为什么在初始化文件中audit_trail参数设为true,而在v$parameter中value列为NONE?
- 可否告知?
- 请教:dp2K如何通过odbc操作异质数据库如sqlserver?
- Enterprise Manager console 打开非本机的oracle数据库
- oracle dblink小问题
--------------------
2009-11-17 12:10:20
2009-11-16 12:10:20
2009-11-16 15:10:20
SQL> select * from t1
2 where to_date(time,'YYYY-MM-DD HH24:MI:SS') between to_date('2009-11-16 13:
00:00','YYYY-MM-DD HH24:MI:SS') and to_date('2009-11-17 13:00:00','YYYY-MM-DD HH
24:MI:SS');TIME
--------------------
2009-11-17 12:10:20
2009-11-16 15:10:20
select * from t1
where time between '2009-11-16 13:
00:00' and '2009-11-17 13:00:00';
呵呵 ORACLE还挺聪明哦 把字符串当日期比 我试了几个特殊值都没试出错误 好像是可以
不过有个限制条件 那就是比较字符串必须与表中存储日期字符串的格式相同才行SQL> select * from t1;TIME
--------------------
2009-11-17 12:10:20
2009-11-16 12:10:20
2009-11-16 15:10:20SQL> select * from t1
2 where time between '09-11-16 13:
3 00:00' and '09-11-17 13:00:00';no rows selectedSQL> select * from t1
2 where time between '2009-11-16 13:
3 00:00' and '2009-11-17 13:00:00';TIME
--------------------
2009-11-17 12:10:20
2009-11-16 15:10:20