DECLARE @DATE SMALLDATETIME SET @DATE=GETDATE()SELECT DATEPART(WEEK,DAT)-DATEPART(WEEK,@DATE-DAY(@DATE)+1)+1 FROM ( SELECT DATEADD(DAY,NUMBER,@DATE-DAY(@DATE)+1) AS DAT FROM MASTER..SPT_VALUES WHERE TYPE='P' AND DAY(DATEADD(MONTH,1,@DATE-DAY(@DATE)+1)-1)>NUMBER ) T WHERE DAT=@DATE
csdyyr 老大,,是对的..马上结贴
--上面复杂了 DECLARE @DATE SMALLDATETIME SET @DATE=GETDATE()SELECT DATEPART(WEEK,@DATE)-DATEPART(WEEK,@DATE-DAY(@DATE)+1)+1
SELECT DATEPART(WK, GETDATE())
-----------
4(所影响的行数为 1 行)
-----------
11(所影响的行数为 1 行)
select datepart(wk,getdate())
楼主可以去看看datepart函数的那些参数
SET @DATE=GETDATE()SELECT DATEPART(WEEK,DAT)-DATEPART(WEEK,@DATE-DAY(@DATE)+1)+1
FROM (
SELECT DATEADD(DAY,NUMBER,@DATE-DAY(@DATE)+1) AS DAT
FROM MASTER..SPT_VALUES
WHERE TYPE='P' AND DAY(DATEADD(MONTH,1,@DATE-DAY(@DATE)+1)-1)>NUMBER
) T
WHERE DAT=@DATE
DECLARE @DATE SMALLDATETIME
SET @DATE=GETDATE()SELECT DATEPART(WEEK,@DATE)-DATEPART(WEEK,@DATE-DAY(@DATE)+1)+1