根据你这个时间格式 2015-06-20 00:00:00.000
看上去不是 Oracle 数据库的样子。
可能是 SQL Server 数据库。
1>2>
3> -- 使用强制指定 时分秒的算法
4> SELECT Convert(datetime, '2015-06-20 23:59:59') AS result
5> GO
result
-----------------------
2015-06-20 23:59:59.000
(1 行受影响)
1>
2>
3> -- 使用 加1天, 减1秒的算法
4> SELECT DATEADD(ss, -1, DATEADD(dd, 1, '2015-06-20')) AS result
5> GO
result
-----------------------
2015-06-20 23:59:59.000
(1 行受影响)
SQL的时间格式是:YYYY-MM-DD HH:NN:SS.sss
其sss是毫秒,由于计算机内部时钟晶振的问题,SQL时间最小单位为3毫秒。
一般SQL时间格式处理:大都采取转换格式至datetime格式
例如显示时常用到的:
1、将2015转换为当年的第一天:
select cast('2015'+'-1-1' as datetime)输出结果为:2015-01-01 00:00:00.000
2、将2015-02转换为当年的第一天:
select cast('2015-02'+'-1' as datetime)输出结果为:2015-02-01 00:00:00.000
其实以上可以总结为将具有一定格式的字符串转换为日期类型,只要将年月日补全,后面的时间会默认为0时0分0秒0毫秒
向数据库中插入:to_date('20040810','yyyy-mm-dd'),这里你要注意你的数据库字段必须是日期型,当然日期是什么格式,有很多种,你可以自己选择:yyyy/mm/dd,mm/dd/yyyy等等很多欢迎分享,转载请注明来源:内存溢出
评论列表(0条)