手机
当前位置:查字典教程网 >编程开发 >mssql数据库 >MSSQL 生成日期列表代码
MSSQL 生成日期列表代码
摘要:复制代码代码如下:ifexists(select*fromdbo.sysobjectswhereid=object_id(N'[dbo].[...

复制代码 代码如下:

if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[f_getdate]') and xtype in (N'FN', N'IF', N'TF'))

drop function [dbo].[f_getdate]

GO

create function [dbo].[f_getdate]

(

@year int, --要查询的年份

@bz bit --@bz=0 查询工作日,@bz=1 查询休息日,@bz IS NULL 查询全部日期

)

RETURNS @re TABLE(Date datetime,Weekday nvarchar(3))

as

begin

DECLARE @tb TABLE(ID int ,Date datetime)

insert @tb select number,

dateadd(day,number,DATEADD(Year,@YEAR-1900,'1900-1-1'))

from master..spt_values where type='P' and number between 0 and 366

DELETE FROM @tb WHERE Date>DATEADD(Year,@YEAR-1900,'1900-12-31')

IF @bz=0

INSERT INTO @re(Date,Weekday)

SELECT Date,DATENAME(Weekday,Date)

FROM @tb

WHERE (DATEPART(Weekday,Date)+@@DATEFIRST-1)%7 BETWEEN 1 AND 5

ELSE IF @bz=1

INSERT INTO @re(Date,Weekday)

SELECT Date,DATENAME(Weekday,Date)

FROM @tb

WHERE (DATEPART(Weekday,Date)+@@DATEFIRST-1)%7 IN (0,6)

ELSE

INSERT INTO @re(Date,Weekday)

SELECT Date,DATENAME(Weekday,Date)

FROM @tb

RETURN

end

go

select * from dbo.[f_getdate]('2009',0)

【MSSQL 生成日期列表代码】相关文章:

SQL数据库开发中的一些经典代码

SQL 新增/修改 表字段列的类型等

SQL2005 高效分页sql语句

SQL Server数据库之数据库列表介绍

SQL Server附加数据库出错,错误代码5123

SQLServer2005 XML数据操作代码

MsSql 存储过程分页代码 [收集多篇]

SQL 截取字符串应用代码

SQL Server中选出指定范围行的SQL语句代码

SQL Server 2008 R2 应用及多服务器管理

精品推荐
分类导航