Sql 获取Sybase中当前周的开始和结束日期
我正在尝试获取Sybase ASE数据库中某个表当前一周的开始日期和结束日期,并将这些日期作为变量返回,以便添加到insert调用中Sql 获取Sybase中当前周的开始和结束日期,sql,sybase,sap-ase,getdate,Sql,Sybase,Sap Ase,Getdate,我正在尝试获取Sybase ASE数据库中某个表当前一周的开始日期和结束日期,并将这些日期作为变量返回,以便添加到insert调用中 理想情况下,该函数可以简单地基于getDate()函数工作。我也尝试过其他方法&查看了其他答案,但很少有人专门针对Sybase语法。任何帮助都将不胜感激 您可以使用datepart和dateadd的以下组合来查找一周的第一天和最后几天。可能不是最有效的方法,因为我不是一个SQL开发人员,但它会工作的。默认设置的周数从星期日开始,到星期六结束 declare @dw
理想情况下,该函数可以简单地基于
getDate()
函数工作。我也尝试过其他方法&查看了其他答案,但很少有人专门针对Sybase语法。任何帮助都将不胜感激 您可以使用datepart
和dateadd
的以下组合来查找一周的第一天和最后几天。可能不是最有效的方法,因为我不是一个SQL开发人员,但它会工作的。默认设置的周数从星期日开始,到星期六结束
declare @dw_number smallint,
@to_first_dw smallint,
@to_last_dw smallint,
@wk_begin_date datetime,
@wk_end_date datetime,
select @dw_number = datepart(dw,getdate()) //get day of week number
select @to_first_dw = (@dw_number -1) * -1, //get number of days to subtract to get week start
@to_last_dw = 7 - @dw_number //get number of days to add to get week end
select @wk_begin_date = dateadd(dd,@to_first_dw,getdate()),
@wk_end_date = dateadd(dd,@to_last_dw,getdate())
select @wk_begin_date, @wk_end_date
您可能需要使用
datepart
查找一周中的某一天,dw
-然后将其滚动到dateadd
中以获取所需的日期。