oracle一个带年月日时分秒的时间字段,怎样只修改其年月日,时分秒保留原值?
oracle一个带年月日时分秒的时间字段,怎样只修改其年月日,时分秒保留原值?而且date类型的字段有的有时分秒有的没有时分秒,这样的sql语句怎么写...
oracle一个带年月日时分秒的时间字段,怎样只修改其年月日,时分秒保留原值?而且date类型的字段有的有时分秒有的没有时分秒,这样的sql语句怎么写
展开
展开全部
你可用todate函数和substring进行函数截取,后面的那几位数不变,只改变前面的部分就好了,这个to_date函数就是专门用来干这个的
select * from tablename where time>to_date("2012-12-23","yyyy-mm-dd");这样就是简单的时间条件查询,后面的to_date函数还可以变的更复杂些。你设置你的date时间存取的时候也可以这么写。建议存取的时候用String类型。便于存取和操作保留
select * from tablename where time>to_date("2012-12-23","yyyy-mm-dd");这样就是简单的时间条件查询,后面的to_date函数还可以变的更复杂些。你设置你的date时间存取的时候也可以这么写。建议存取的时候用String类型。便于存取和操作保留
追问
不知道怎么写啊
追答
你如果是按统一规则存的那么他的读取类型肯定是相同的啊,你要做的就是数据库里面不要存取时间类型,直接用varchar2类型,你的sql就应该是
insert into tablename(time) values(to_char(time,"yyyy-mm-dd 24hh:mi:ss"));
这个time是你的变量,你可以在这样做的前面添加subString函数截取啊
String time = time.substring(0,10)+" 00:00:00";这样就是后面的几位数是相同的了,然后存入数据库就行,
你的那个原值也可以用
String timeLast = time.substring(11,8);这样就行了,具体的你还得看你自己的,主要用的就是这两个函数,
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询