帮看看以下sql语句内参数的意思 select dateadd(day, 2-datepart(weekday,DATEADD(S,Submit_Date,'1970-01-01 08:00:00')),DATEADD(S,Submit_Date,'1970-01-01 08:00:00')) as '周一'from HPD_Help_Desk这是求当前日期周一的sql语句,求问参数内是啥意思 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)参数 就是函数上面要求传什么,比如fun(int a) 那么参数a是整型,调用时就是可以f(10),f(2) 这样 -- 楼主比较一下这三个值select getdate() [current_date], datepart(weekday,getdate()) [current_weekday], dateadd(day,datepart(weekday,getdate())-7 + 1,getdate()) [current_mondy]current_date current_weekday current_mondy----------------------- --------------- -----------------------2016-11-23 19:17:55.357 4 2016-11-21 19:17:55.357(1 行受影响) 这段SQL应该取得DATEADD(S,Submit_Date,'1970-01-01 08:00:00') 日期所在周的周一的日期但要注意对于datepart(weekday, 要考虑@@DATEFIRST默认@@DATEFIRST=7.这个逻辑成立方式,计算日期是周几,然后倒退到周一 SELECT dateadd( day, 2-datepart(weekday,GETDATE()), GETDATE()) as '周一'--2016-11-21 17:48:20.637
SELECT DATEADD(wk, DATEDIFF(wk,0,getdate()), 0)
参数 就是函数上面要求传什么,比如fun(int a) 那么参数a是整型,调用时就是可以f(10),f(2) 这样
-- 楼主比较一下这三个值
select
getdate() [current_date],
datepart(weekday,getdate()) [current_weekday],
dateadd(day,datepart(weekday,getdate())-7 + 1,getdate()) [current_mondy]
current_date current_weekday current_mondy
----------------------- --------------- -----------------------
2016-11-23 19:17:55.357 4 2016-11-21 19:17:55.357(1 行受影响)
方式,计算日期是周几,然后倒退到周一 SELECT dateadd( day, 2-datepart(weekday,GETDATE()), GETDATE()) as '周一'
--2016-11-21 17:48:20.637