从SQL Server中的日期时间中删除时间

时间:2014-04-12 05:41:24

标签: sql sql-server datetime

我目前正试图从time删除datetime

这些是表格中的行

PK_Date
-----------------------
2011-07-03 00:00:00.000
2011-07-04 00:00:00.000

我的代码可以使用,但实际上并不起作用。意思是它没有给我一个错误,但是当我看结果时,它仍然完全一样。我想改变该表中的每一行,以成为日期,例如。 2011-03-04

任何想法?欢呼声,

 UPDATE dbo.Time 
 SET PK_Date = CONVERT(date,PK_Date,111)  
 FROM dbo.Time

2 个答案:

答案 0 :(得分:1)

如果您的列数据类型为DATETIME,那么您将始终拥有该值的时间组件。如果您只是想查看日期,可以CONVERT将其设置为字符串并为其设置样式,或CASTCONVERT将其设置为DATE

SELECT CAST(PK_Date AS DATE) from dbo.Time
SELECT CONVERT(DATE, PK_Date) from dbo.Time
SELECT CONVERT(VARCHAR(10), PK_Date, 111) from dbo.Time

答案 1 :(得分:1)

如果只想存储日期部分,请尝试更改该列数据类型并将其设置为日期

ALTER TABLE dbo.Time ALTER COLUMN PK_Date Date