sql server 2005 怎样让DateTime只存年月日或者用别的什么类型?(在线等)

qq735997616 2010-10-14 03:38:23
sql server 2005 怎样让DateTime只存年月日?或者用别的什么类型?
...全文
186 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
feilniu 2010-10-14
方案一:datetime,8字节,保存'2010-10-14 00:00:00.000'
方案二:char(8),8字节,保存'20101014'
方案三:int,4字节,保存40463
方案四:int,4字节,保存20101014

可用性递减。具体看你的需求。


CREATE TABLE #DateSample(
ID int IDENTITY(1,1) NOT NULL PRIMARY KEY CLUSTERED,
date1 datetime NOT NULL,
date2 char(8) NOT NULL,
date3 int NOT NULL,
date4 int NOT NULL
)
GO
INSERT INTO #DateSample
VALUES(
CONVERT(char(8),GETDATE(),112),
CONVERT(char(8),GETDATE(),112),
DATEDIFF(day,0,GETDATE()),
CAST(CONVERT(char(8),GETDATE(),112) AS int)
)
GO
SELECT *,
dt1 = date1,
dt2 = CAST(date2 AS datetime),
dt3 = DATEADD(day,0,date3),
dt4 = CAST(CAST(date4 AS char(8)) AS datetime)
FROM #DateSample
GO
回复
王向飞 2010-10-14
存还是用datetime
查询的时候你可以转换一下
用函数convert 随便你怎么转都行。
回复
SQLCenter 2010-10-14
2008才开始有date类型。
回复
SQLCenter 2010-10-14
可以用varchar,不过不建议

显示时convert一下。
回复
相关推荐
发帖
疑难问题
创建于2007-09-28

2.1w+

社区成员

MS-SQL Server 疑难问题
申请成为版主
帖子事件
创建了帖子
2010-10-14 03:38
社区公告
暂无公告