发布网友 发布时间:2022-04-22 00:05
共4个回答
热心网友 时间:2023-11-05 12:34
这个属于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
热心网友 时间:2023-11-05 12:34
SELECT TO_CHAR(BIRTH,'YYYY-MM-DD')你这丢个引号当然提示文字与格式不符了,没必要用TO_DATE(),定义成String类型吧 用String类型的变量来接收一个字符类型的日期(TO_CHAR())
to_date()是把birth按‘yyyy-mm-dd’格式转成日期类型的 你用一个字符串接收当然接收 不了了 转换一下就行了
热心网友 时间:2023-11-05 12:35
你的birth变量是什么类型?
1、字符型,那么你这样写肯定会报错。
2、Oracle的date型,那么肯定没问题。
3、其他时间型,那么要考虑先要用java内部函数转换成字符串,再直接to_date。
热心网友 时间:2023-11-05 12:35
传参数,不知道你用的是java还是存储过程。