首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

oracle查询月份有关问题

2012-08-15 
oracle查询月份问题有表t字段regdate char类型值举例:2012-07-21如果查询7月份的所有记录SQL codeselect *

oracle查询月份问题
有表t
字段regdate char类型
值举例:2012-07-21


如果查询7月份的所有记录

SQL code
select * from t where to_char(regedta,'MM')='7'

出错

[解决办法]
这个问题是你没有将regdate 的类型转换成datetime类型,应该改为:
SELECT * FROM T WHERE TO_CHAR(TO_DATE(REGEDTA,'yyyy/MM/dd HH24:mi:ss'),'MM')='7'
[解决办法]
因为转换成24小时制的关系,后面的月份格式是 XXXX/XX/XX(如:2012/07/13),所以上面的应该在月份后面加个0
[解决办法]
SQL code
select * from t where to_number(to_char(regedta,'MM'))=7或者select * from t where to_number(to_date(regedta,'MM'))=7 

热点排行