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

qq735997616 2010-10-14 03:38:23
sql server 2005 怎样让DateTime只存年月日?或者用别的什么类型?
...全文
313 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
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一下。

22,300

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧