SQL能否取出一个日期是一年第几周

来源:百度知道 编辑:UC知道 时间:2024/06/21 22:07:37
打个比方说,planAddDate字段里存放了日期,比如2008-08-08 用year(convert (datetime,planAddDate))话可以取出是哪年, 用month(convert (datetime,planAddDate))可以取出月,
取出是第几周有什么办法呢。最主提供算法就可以!如果有全套的那最好了,存储过程等都可以

select DATENAME(week,getdate())

这是取当前日期的第几周

如果要指定字段的只要把getdate()换为字段名称 如:

select DATENAME(week,字段名称) as weekNum from 表名称

参照下面的关于DATENAME

http://www.cnblogs.com/zengwei/archive/2008/06/05/1214295.html

datediff(day,convert(datetime,datename(yyyy,planAddDate)+'-'+datename(mm,01)+'-'+datename(dd,00)),planAddDate)/7+1

不看不知道呀 我还琢磨呢 原来这么简单
datename(week,planAddDate) 肯定行
datepart也行

datepart(ww,planAddDate)
planAddDate得是日期格式
不是了自己转换

datepart(wk,cast(planAddDate as datetime))

不知道你的数据库是什么,如果是DB2或MYSQL的话可以直接用
week(年月日)函数,可以直接获得第几周!

select a,week(a) from foo;