公司有个表记录了出差(加班)的初始时间和截止时间,现在要计算出加班时间,之前的设计并没有考虑到这部分,因此本人通过sql重新计算周末数

表formmain

starttime

endtime

使用游标方式抓每行的数据进行分析,具体程序如下:

CREATE PROCEDURE [dbo].[shish]
AS
declare @starttime datetime
declare @endtime datetime
declare @id decimal(20,0)
declare mycursor cursor for select id,field0007,field0008 from formmain_0896;
open mycursor
fetch next from mycursor into @id,@starttime,@endtime
while(@@fetch_status = 0)
begin
declare @week varchar(20)
declare @num int
set @num = 0
while @starttime <= @endtime
begin
set @week = DATENAME(weekday, @starttime);
if (@week = '星期六' or @week = '星期日')
begin
set @NUM=@NUM+1
end
set @starttime = @starttime + 1;
end
INSERT INTO tbs_sl (id,starttime,endtime,sl) select @id,@starttime,@endtime,@num
fetch next from mycursor into @id,@starttime,@endtime
end
close mycursor
deallocate mycursor
GO

sql server两个时间段内,求出周末的量的更多相关文章

  1. SQL Server 两个时间段的差and时间截取到时分

    /*--------------------------时间截取到时分-----------------------------------*/ ), ),)--返回2017-11-24 19:25 ...

  2. sql server取某个时间段内所有日期或者所有月份

    取所有月份: declare @begin datetime,@end datetime set @begin='2015-2-6' set @end='2015-12-2' declare @mon ...

  3. SQL SERVER 获取给定时间段内的所有日期列表

    declare @StartDate DATETIME = '2018/08/01'declare @EndDate DATETIME ='2018/09/27'SELECT CONVERT (VAR ...

  4. 比较sql server两个数据库

    比较sql server两个数据库 http://opendbdiff.codeplex.com/ http://www.red-gate.com/ 有SQL Compare和SQL Prompt 开 ...

  5. sql server编写通用脚本自动统计各表数据量心得

    工作过程中,如果一个数据库的表比较多,手工编写统计脚本就会比较繁琐,于是摸索出自动生成各表统计数据量脚本的通用方法,直接上代码: /* 脚本来源:https://www.cnblogs.com/zha ...

  6. Sql Server查询性能优化之走出索引的误区

    据了解绝大多数开发人员对于索引的理解都是一知半解,局限于大多数日常工作没有机会.也什么没有必要去关心.了解索引,实在哪天某个查询太慢了找到查询条件建个索引就ok,哪天又有个查询慢了,再建立个索引就是, ...

  7. Sql Server 2016 新功能——内置的 Temporal Tables

    放假之前老大跟我提起了一下2016有个有趣的功能叫 Temporal Table ,今天去看了一下资料整理一下. 这个功能看上去像是临时表,但是其实是系统维护的一个历史记录表.(在某个程度上面比起我们 ...

  8. Oracle 查询两个时间段内的所有日期列表

    1.查询某时间段内日期列表 select level,to_char(to_date('2013-12-31','yyyy-mm-dd')+level-1,'yyyy-mm-dd') as date_ ...

  9. Sql server 查询某个时间段,分布有几周,几月和几日

    1. 查询:以“周”为单位 --查询以下时间段内分别有几周 --时间段:“2017-09-01”到“2017-10-1” select number as wknum from master..spt ...

随机推荐

  1. [转]【Java】内部类(Inner Class)如何创建(new)

    简单来说,内部类(inner class)指那些类定义代码被置于其它类定义中的类:而对于一般的.类定义代码不嵌套在其它类定义中的类,称为顶层(top-level)类.对于一个内部类,包含其定义代码的类 ...

  2. LINUX下文件编译

    body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...

  3. 安装新的int 9中断例程

    body, table{font-family: 微软雅黑; font-size: 13.5pt} table{border-collapse: collapse; border: solid gra ...

  4. Azure VM 防止被入侵

    伴随着开源Linux系统的逐渐盛行,在机器上线之前配置好安全策略至关重要,分享几点有关Azure Linux VM机器的安全建议如下: 1.禁止root账号登录虚拟机,并增加密码的复杂度(大小写字母, ...

  5. python_如何实现可迭代对象和迭代器对象?

    什么是可迭代对象? 列表.字符串 for循环的本质? for循环要确保in后面的对象为可迭代对象,如何确保? iter() 方法得到一个迭代器对象 不停.__next__() 方法对迭代器对象进行迭代 ...

  6. BSA Network Shell系列-通过NSH执行Powershell,VBScript或bat files脚本

    参考:Running Powershell, VBScript, or bat files via NSH 如果你直接在NSH命令行执行的话,可以参考我翻译的下面的东东,如果想运行NSH 脚本作业的话 ...

  7. Linux指令--mv

    本文博客转自:http://www.cnblogs.com/peida/archive/2012/10/27/2743022.html mv命令是move的缩写,可以用来移动文件或者将文件改名(mov ...

  8. form表单中enctype属性作用

    上传文件时,提交的表单属性里需要加enctype="multipart/form-data",才能提交文件信息,不然会报错.那么enctype属性的作用是什么?就是设置表单传输的编 ...

  9. CSS样式中常用的字体名称

    css中引入字体: @font-face { font-family: "AncientWar"; src: url('style/css/fonts/AncientWar.ttf ...

  10. Lambda表达式详解 (转)

    前言 1.天真热,程序员活着不易,星期天,也要顶着火辣辣的太阳,总结这些东西. 2.夸夸lambda吧:简化了匿名委托的使用,让你让代码更加简洁,优雅.据说它是微软自C#1.0后新增的最重要的功能之一 ...