oracle 日期格式 查询 如有一个字段类型是date的 我要根据这个字段来查询 怎么做 急
怎么他会提示{日期格式无法识别}这个错误啊stringsql="selectRYID,XM,XB,SFZHM,CSRQ,RYRQ,JSBMfromVW_RY_JBXX_T...
怎么他会提示{日期格式无法识别} 这个错误啊
string sql = "select RYID,XM,XB,SFZHM,CSRQ,RYRQ,JSBM from VW_RY_JBXX_TO_RXXT
sql += " and csrq>to_date('" + model.Csrq + "','yyyy-mm-dd 24hi:mi:ss')";
model.csrq 传进来的是日期:如(1999-11-11 12:00:00)
是这样吗? 明天去公司试试 谢谢咯 明天在给你加分哈 我也不知道我有多少分 嘿嘿 展开
string sql = "select RYID,XM,XB,SFZHM,CSRQ,RYRQ,JSBM from VW_RY_JBXX_TO_RXXT
sql += " and csrq>to_date('" + model.Csrq + "','yyyy-mm-dd 24hi:mi:ss')";
model.csrq 传进来的是日期:如(1999-11-11 12:00:00)
是这样吗? 明天去公司试试 谢谢咯 明天在给你加分哈 我也不知道我有多少分 嘿嘿 展开
4个回答
展开全部
这个属于oracle时间函数的用法
在oracle里,日期格式是一种特殊的东西
这里有一个日期转换函数
select to_char(日期,'yyyy-mm-dd hh24:mi:ss') from tablename;
这里的to_char就是将日期型转换成字符型的一个函数,转换成的格式就是
2010-08-23 17:51:20
当然你可以将这个日期转换成其他,如:
select to_char(日期,'yyyy-mm-dd') from tablename;
查出来的结果2010-08-23
所以你要根据这个日期来查东西就可以这么用
select * from tablename where to_char(日期,'yyyymmdd')between '20100801' and '20100823'
这个就是查日期8月1日到8月23日的数据
select * from tablename where to_char(日期,'yyyymmdd') = '20100801'
这个就是查8月1日的数据
其他不懂的你再问吧
-------补充------
你把你写的东西粘贴一下,也好帮你分析啊
你后边的" + model.Csrq + "参数传进来的是什么东西?
---------补充2-------
'yyyy-mm-dd 24hi:mi:ss'
这个地方错了,应改成
'yyyy-mm-dd hh24:mi:ss'
不是24hi
在oracle里,日期格式是一种特殊的东西
这里有一个日期转换函数
select to_char(日期,'yyyy-mm-dd hh24:mi:ss') from tablename;
这里的to_char就是将日期型转换成字符型的一个函数,转换成的格式就是
2010-08-23 17:51:20
当然你可以将这个日期转换成其他,如:
select to_char(日期,'yyyy-mm-dd') from tablename;
查出来的结果2010-08-23
所以你要根据这个日期来查东西就可以这么用
select * from tablename where to_char(日期,'yyyymmdd')between '20100801' and '20100823'
这个就是查日期8月1日到8月23日的数据
select * from tablename where to_char(日期,'yyyymmdd') = '20100801'
这个就是查8月1日的数据
其他不懂的你再问吧
-------补充------
你把你写的东西粘贴一下,也好帮你分析啊
你后边的" + model.Csrq + "参数传进来的是什么东西?
---------补充2-------
'yyyy-mm-dd 24hi:mi:ss'
这个地方错了,应改成
'yyyy-mm-dd hh24:mi:ss'
不是24hi
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select * from table_name where date > to_date('2010-01-01','yyyy-mm-dd')
select * from table_name where date > to_date('2010-01-01 00:00:00','yyyy-mm-dd 24hi:mi:ss')
select * from table_name where date > to_date('2010-01-01 00:00:00','yyyy-mm-dd 24hi:mi:ss')
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询