我在问题中看过如何从MS SQL中的datetime数据类型中删除毫秒的帖子。
但是时间数据类型是什么 - 从time数据类型中删除毫秒的最简单方法是什么?
另外:MS SQL(2008)中是否有任何时间数据类型不包括毫秒?
全部谢谢!
答案 0 :(得分:15)
删除毫秒的最简单方法之一是:
SELECT CONVERT(VARCHAR, GETDATE(), 20)
如果您不想包含毫秒:
TIME(0) will help
实施例
CAST(DATEADD(second, SUM(hora), '00:00:00') AS time(0))
答案 1 :(得分:0)
我为MS SQL Server 2005解决此问题的方法是
create table mytable (Date varchar(11))
insert into mydb.mytable select GETDATE() as Date;
这会从GETDATE()关闭一些值,在年份部分的最后一个数字之后。即'2014年1月9日'。
编辑:要清楚,varchar(11)就是这里的解决方案。
编辑:如果你必须加入mysql CURDATE(),这个解决方案很糟糕,因为当MSSQL Server有字母月份时,mysql会返回所有整数。
答案 2 :(得分:0)
如果你只想在sql server 2005中返回时间你可以使用带有转换的子字符串函数,即SELECT SUBSTRING(CONVERT(VARCHAR,GETDATE(),20),12,8)。 这将以hh:mm:ss。
格式返回时间