MSSQL 生成日期列表代码

 更新时间:2009年09月28日 18:05:48   作者:  
MSSQL 生成日期列表的代码,需要的朋友可以参考下。
复制代码 代码如下:

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)

相关文章

  • 删除重复记录

    删除重复记录

    删除重复记录...
    2006-08-08
  • SQL Server中发送HTML格式邮件的方法

    SQL Server中发送HTML格式邮件的方法

    这篇文章主要介绍了SQL Server中发送HTML格式邮件的方法,需要的朋友可以参考下
    2014-10-10
  • 列出SQL Server中具有默认值的所有字段的语句

    列出SQL Server中具有默认值的所有字段的语句

    上个星期我在对一个供应商开发的数据库按规定进行故障排除的时候,我们需要对他们数据库中50个表的每一个都进行查看,以确保所有期望是默认值的字段都被分配了默认值。你可以想象这是一个多么令人畏惧的工作,而我立即提出了这个问题。有没有一个比在SQL Server管理套件中打开每一个表来查看这个schema的更好方法吗?
    2008-10-10
  • table 行转列的sql详解

    table 行转列的sql详解

    tabele行转列的资料,网上搜一下很多。大家照着网上copy就可以实现自己想要的功能。但是大家在实现功能后是否想过行转列为什么要这样写?下面就以一个实例来分析, 希望对初学者有所帮助。
    2009-06-06
  • Sqlserver 表类型和表变量介绍

    Sqlserver 表类型和表变量介绍

    这篇文章介绍了Sqlserver 表类型和表变量,有需要的朋友可以参考一下
    2013-09-09
  • 解析React 中的Virtual DOM

    解析React 中的Virtual DOM

    React在前端界一直很流行,而且学起来也不是很难,只需要学会JSX、理解State和Props,然后就可以愉快的玩耍了,但想要成为React的专家你还需要对React有一些更深入的理解,对React  Virtual DOM相关知识感兴趣的朋友一起看看吧
    2022-01-01
  • sql 多表连接查询

    sql 多表连接查询

    sql 多表连接查询语句代码,大家可以参考下。
    2009-06-06
  • SQL Server 数据库自动执行管理任务

    SQL Server 数据库自动执行管理任务

    如要让数据库进行自动管理,则管理员需要预先定义一些可预测的管理任务以及这些任务发送的条件。
    2009-03-03
  • SqlServer 索引自动优化工具

    SqlServer 索引自动优化工具

    前段接手了个优化项目,大概要求是对公司现有的1W多张表进行索引优化,完善现有的,剔除无效的索引
    2012-08-08
  • Sql Server的一些知识点定义总结

    Sql Server的一些知识点定义总结

    这篇文章主要给大家总结介绍了关于Sql Server的一些知识点定义文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-12-12

最新评论