我正在使用SQL Server 2005。
我有一列名为purchase_time的datetime类型。如何选择带有时间部分的列-仅日期。
谢谢,
巴里
编辑: 是否可以安全地获取日期时间并通过Python在第一个空格上对其进行拆分,还是此格式取决于语言环境?
在版本低于2008(基于对某些答案的其他评论,我认为您正在运行)的版本中,最有效的方法是将其保留为datetime类型,并使用日期数学来避免字符串转换。
SELECT DATEADD(DAY, DATEDIFF(DAY, '20000101', purchase_time), '20000101') FROM dbo.table;
编辑
如果您只希望日期用于显示目的,而不是用于计算或分组,则最好由客户来处理。您可以在SQL中通过简单地说:
SELECT dt = CONVERT(CHAR(10), purchase_time, 120) FROM dbo.table;