sql问题 在线等! 如何写一段sql语句,得出一个日期是当月的第几个星期几,也就是判断当天在该月第几次出现? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 SELECT DAY(GETDATE()) / 7 + 1把GETDATE()换成你要求的日期即可 select datename(weekday,getdate())select datepart(day,getdate())/7+1 获取今天是周几SELECT DATEPART(dw,GETDATE())获取今天是第几个周几SELECT (DAY(GETDATE())-1) / 7 + 1 create table tb(日期 datetime)insert into tb select '2008-06-15'insert into tb select '2008-06-16'insert into tb select '2008-06-17'insert into tb select '2008-06-18'insert into tb select '2008-06-19'insert into tb select '2008-06-20'insert into tb select '2008-06-21'insert into tb select '2008-06-22'insert into tb select '2008-06-23'insert into tb select '2008-06-24'insert into tb select '2008-06-25'select *,日期='第'+ltrim((datepart(dd,日期)-(datepart(dw,日期)+@@datefirst-1)%7)/7)+'周 星期'+replace(ltrim((datepart(dw,日期)+@@datefirst-1)%7),'0','天')from tb 日期 日期2008-06-15 00:00:00.000 第2周 星期天2008-06-16 00:00:00.000 第2周 星期12008-06-17 00:00:00.000 第2周 星期22008-06-18 00:00:00.000 第2周 星期32008-06-19 00:00:00.000 第2周 星期42008-06-20 00:00:00.000 第2周 星期52008-06-21 00:00:00.000 第2周 星期62008-06-22 00:00:00.000 第3周 星期天2008-06-23 00:00:00.000 第3周 星期12008-06-24 00:00:00.000 第3周 星期22008-06-25 00:00:00.000 第3周 星期3 SELECT DAY(GETDATE()) / 7 + 1 把GETDATE()换成你要求的日期即可不行啊,比如2007-01-07得出是2,而实际上它是该月第一个星期天 Sorry,虽然结贴了,但还是要修正一下错误应该是SELECT (DAY(GETDATE()) - 1) / 7 + 1 Globals.ThisDocument.sessionID是什么意思啊?为什么我的程序用不了 c# 与java 在LINQ查询的where语句中将字符串转换为数字 高分急:c#可以产生16进制文件吗? *****************菜鸟求助:如何将Aceess中的所有表(多个表)的表名得到?********** 关于随机数用图片表示的问题!! 关于WinForm 的DataGrid的两个问题 C#如何学?怎么学?100分 有那位大虾知道《Visual.C#时尚编程百例》在那里可以下载电子版 她们的关系? 上帝啊:为什么我的这个回调函数不执行!!!! COM引用和.NET引用区别在哪
把GETDATE()换成你要求的日期即可
SELECT DATEPART(dw,GETDATE())获取今天是第几个周几
SELECT (DAY(GETDATE())-1) / 7 + 1
insert into tb select '2008-06-15'
insert into tb select '2008-06-16'
insert into tb select '2008-06-17'
insert into tb select '2008-06-18'
insert into tb select '2008-06-19'
insert into tb select '2008-06-20'
insert into tb select '2008-06-21'
insert into tb select '2008-06-22'
insert into tb select '2008-06-23'
insert into tb select '2008-06-24'
insert into tb select '2008-06-25'select *,
日期='第'+ltrim((datepart(dd,日期)-(datepart(dw,日期)+@@datefirst-1)%7)/7)+'周 星期'+replace(ltrim((datepart(dw,日期)+@@datefirst-1)%7),'0','天')
from tb 日期 日期
2008-06-15 00:00:00.000 第2周 星期天
2008-06-16 00:00:00.000 第2周 星期1
2008-06-17 00:00:00.000 第2周 星期2
2008-06-18 00:00:00.000 第2周 星期3
2008-06-19 00:00:00.000 第2周 星期4
2008-06-20 00:00:00.000 第2周 星期5
2008-06-21 00:00:00.000 第2周 星期6
2008-06-22 00:00:00.000 第3周 星期天
2008-06-23 00:00:00.000 第3周 星期1
2008-06-24 00:00:00.000 第3周 星期2
2008-06-25 00:00:00.000 第3周 星期3
把GETDATE()换成你要求的日期即可不行啊,比如2007-01-07得出是2,而实际上它是该月第一个星期天
应该是
SELECT (DAY(GETDATE()) - 1) / 7 + 1