当前位置:  数据库>Sql Server一次更新多列数据的例子 iis7站长之家

sql server 生成日期列表的函数的例子

    来源: 互联网  发布时间:2014-08-29

    本文导语:  sql server 生成日期列表的函数的例子,供大家学习参考。   代码如下: 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    /**//*--生成日期列表     ...

sql server 生成日期列表的函数的例子,供大家学习参考。
 

代码如下:
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
  
/**//*--生成日期列表
  
  生成指定年份的工作日/休息日列表
  
--邹建 2003.12(引用请保留此信息)--*/
  
/**//*--调用示例
  
  --查询 2003 年的工作日列表
  SELECT * FROM dbo.f_getdate(2003,0)
  
  --查询 2003 年的休息日列表
  SELECT * FROM dbo.f_getdate(2003,1)
  
  --查询 2003 年全部日期列表
  SELECT * FROM dbo.f_getdate(2003,NULL)
--*/
CREATE FUNCTION dbo.f_getdate(
@year int,  --要查询的年份
@bz bit    --@bz=0 查询工作日,@bz=1 查询休息日,@bz IS NULL 查询全部日期
)RETURNS @re TABLE(id int identity(1,1),Date datetime,Weekday nvarchar(3))
AS
BEGIN
  DECLARE @tb TABLE(ID int IDENTITY(0,1),Date datetime)
  INSERT INTO @tb(Date) SELECT TOP 366 DATEADD(Year,@YEAR-1900,'1900-1-1')
  FROM sysobjects a ,sysobjects b
  UPDATE @tb SET Date=DATEADD(DAY,id,Date)
  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
  
/**//*====================================================================*/
  
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
  
/**//*--生成列表
  
  生成指定日期段的日期列表
  
--邹建 2005.03(引用请保留此信息)--*/
  
/**//*--调用示例
  
  --查询工作日
  SELECT * FROM dbo.f_getdate('2005-1-3','2005-4-5',0)
  
  --查询休息日
  SELECT * FROM dbo.f_getdate('2005-1-3','2005-4-5',1)
  
  --查询全部日期
  SELECT * FROM dbo.f_getdate('2005-1-3','2005-4-5',NULL)
--*/
  
CREATE FUNCTION dbo.f_getdate(
@begin_date Datetime, --要查询的开始日期
@end_date Datetime,  --要查询的结束日期
@bz bit        --@bz=0 查询工作日,@bz=1 查询休息日,@bz IS NULL 查询全部日期
)RETURNS @re TABLE(id int identity(1,1),Date datetime,Weekday nvarchar(3))
AS
BEGIN
  DECLARE @tb TABLE(ID int IDENTITY(0,1),a bit)
  INSERT INTO @tb(a) SELECT TOP 366 0
  FROM sysobjects a ,sysobjects b
  
  IF @bz=0
    WHILE @begin_date

    
 
 

您可能感兴趣的文章:

  • 在SQL中有函数,比如COUNT(*),怎样通过JDBC调用获得函数值????
  • SQL中含函数,比如COUNT(*),怎样在JDBC接口中取出函数值????
  • sql server中ISNULL函数与Mysql中IFNULL函数的用法
  • sql数据库不能直接用instr函数
  • T-SQL常用的聚合函数
  • sql server中自定义一个简单的 split 函数
  • 初学者问题:标准的sql里有处理日期的函数吗?
  • access与sql server几个常用函数的区别(图文)
  • 分享:sql server 取日期的年月日部分的函数
  • sql函数实现递归查询示例
  • T-SQL常用的数学函数
  • T-SQL实例 函数结果设置为列别名
  • SQL Server中的数据复制到的Access中的函数
  • C处理SQL命令字符串的函数哪里有?
  • SQL中函数 replace 的参数1的数据类型ntext无效的解决方法
  • SQL中有count这个函数,请问如何将这个值取出
  • 高分求java.sql类库的类说明,函数及方法!
  • php is_numberic函数产生sql注入漏洞怎么解决
  • sql函数CAST与CONVERT的区别
  • SQL的SUBSTR()函数使用介绍
  • 根据Hibernte的cfg文件生成sql文件
  • 为什么用sqlserver生成的创建表的sql语句中都不包含主键信息???
  • 怎么写一个Shell来执行这样的功能,访问Oracle数据库,然后执行一个SQL脚本,生成一个文件。急!
  • SQL Server利用bcp命令把SQL语句结果生成文本文件
  • 根据DB生成JAVABEAN及SQL的小工具 db2java
  • 用 SQL 语句生成图表 ChartSQL
  • 生成300个不同的随机数的SQL语句
  • 太奇怪了,难道weblogic不能生成可以滚动的sql对象吗??送60分!!
  • oracle使用sql脚本生成csv文件案例学习
  • 如何将excel文件字段生成sql语句
  • 自动生成卡号与密码的sql语句
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • sql server简单查询的例子(sql入门)
  • sql server 使用ntile获取数据的例子
  • Sql Server一次更新多列数据的例子
  • SQL SERVER导入、导出文本文件的例子
  • SqlServer中用exec处理sql字符串中含有变量的小例子
  • sql语句提取括号中文字的例子
  • 我急需一个JSP+sql2000编写的论坛,哪位能提供一个完整的例子,不胜感激----在线等待
  • sql自连接查询的例子(图文)
  • sql2005递归查询的例子
  • 拼接SQL字符串与日期模糊查询的例子
  • Sql Server 删除主键与重建主键的例子
  • Sql Server 数据纵列转横列的例子
  • SQL分组统计简单例子
  • sql 插入单引号、添加、删除字段的例子
  • sql 游标的使用—游标FOR循环小例子
  • 用t-sql语句完整备份数据库的例子
  • sql server日期格式化处理的例子
  • sql union查询与排序的例子
  • sql通配符三个例子
  • sql server 跨服务器查询的例子
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • SQL客户端软件 PKLite SQL Client
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3