access数据库中怎么将输入的日期让他显示成星期?

access数据库中怎么将输入的日期让他显示成星期?,第1张

星期那一列不要导入了,导入其它几列后再添加一列,只要对时间那一列算出是星期几就可以了select datepart(dw,'2009-10-24') from test

星期日 = 1、星期六 = 7

自己建个表,存贮周信息

看你的需要 可以只存周的开始和结束日期,也可以存从周一到周日的日期。

/*

功能: 计算在某一段时间内某周几(如星期一)的所有日期

设计:OK_008

时间:2006-10

*/

DECLARE @Date datetime

DECLARE @StartDate datetime

DECLARE @EndDate datetime

DECLARE @WeekDay int

DECLARE @i int

SET DATEFIRST 7 --设置每周的第一天

SET @StartDate='2006-01-01' --统计的开始日期

SET @EndDate='2006-12-31' --统计的结束日期

SET @WeekDay=1 --根据实际的@@DATEFIRST而定,一般默认是7,如 @StartDate='2006-01-01'时候, @WeekDay=3表示星期二

SET @i=DATEPART(weekday,@StartDate)

PRINT '每周的第1天设置@@DATEFIRST: '+CAST(@@DATEFIRST AS nvarchar(1))

PRINT '开始日期对应一周的第几天: '+CAST(@i AS nvarchar(1))

IF(@i<=@WeekDay AND @i<7)

SET @i=@WeekDay-@i

ELSE IF(@i<=@WeekDay AND @i=7)

SET @i=@i-@WeekDay

ELSE

SET @i=@@DATEFIRST-@i+@WeekDay

SET @Date=DATEADD(day,@i,@StartDate)

WHILE @Date<=@EndDate

BEGIN

IF(@StartDate<=@Date) PRINT CONVERT(nvarchar(10),@Date,121)

SET @Date=DATEADD(Week,1,@Date)

END

GO

/* ==============运行结果================*/

/*

每周的第1天设置@@DATEFIRST: 7

开始日期对应一周的第几天: 1

2006-01-01

2006-01-08

2006-01-15

2006-01-22

2006-01-29

..........

*/

--这是开始时间,末一天的话 用dateadd(day,1,@DATE)


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11622901.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存