[MSSQL]找出一天数据中从第一条数据开始每累加1小时的数据
用Sql Server找出一天数据中从第一条数据开始每累加1小时的数据
-- =============================================
-- Author: Allen Cai
-- Create date: 2018-07-20 15:59
-- =============================================
ALTER PROCEDURE PLMS_A_Logistics_Test
AS
BEGIN
DECLARE @i INT; --当前索引行
DECLARE @rowCount INT; --总行数
DECLARE @skipCount INT; --跳过行数
DECLARE @行号 INT;
DECLARE @签收时间 DATETIME;
DECLARE @运单号 NVARCHAR(50);
DECLARE @returnTable TABLE
(
运单号 NVARCHAR(50),
签收时间 DATETIME
);
DECLARE @tmpTable TABLE
(
行号 INT,
唯一序列号 VARCHAR(50),
签收时间 DATETIME,
运单号 NVARCHAR(50)
);
INSERT @tmpTable
SELECT r.*
FROM
(
SELECT ROW_NUMBER() OVER (ORDER BY 签收时间) AS 行号,
t.*
FROM [dbo].[A_Logistics_Test] t
WHERE 签收时间 >= '2018-07-19'
AND 签收时间 < '2018-07-20'
) AS r;
SELECT @rowCount = COUNT(行号)
FROM @tmpTable; --总行数
PRINT @rowCount; --打印总行数
SET @i = 1;
WHILE @rowCount >= @i
BEGIN
SELECT @行号 = 行号,
@签收时间 = 签收时间,
@运单号 = 运单号
FROM @tmpTable
WHERE 行号 = @i;
INSERT @returnTable
SELECT @运单号,
@签收时间;
SELECT @skipCount = COUNT(行号)
FROM @tmpTable
WHERE 签收时间 >= @签收时间
AND 签收时间 < DATEADD(HOUR, 1, @签收时间);
SET @i = @i + @skipCount;
PRINT N'当前索引行' + CONVERT(VARCHAR, @i); --打印索引行
END;
SELECT *
FROM @returnTable;
END;
GO
[MSSQL]找出一天数据中从第一条数据开始每累加1小时的数据的更多相关文章
- NLP任务:给定一句话,找出这句话中你想要的关键词,包括起始结束索引
在实际的nlp实际任务中,你有一大堆的人工标注的关键词,来新的一句话,找出这句话中的关键词,以便你以后使用,那如何来做呢? 1)用到正则的 finditer()方法,返回你匹配的关键词的迭代对象,包含 ...
- Java - Collection 高效的找出两个List中的不同元素
如题:有List<String> list1和List<String> list2,两个集合各有上万个元素,怎样取出两个集合中不同的元素? 方法1:遍历两个集合 public ...
- FCC JS基础算法题(5):Return Largest Numbers in Arrays(找出多个数组中的最大数)
题目描述: 找出多个数组中的最大数右边大数组中包含了4个小数组,分别找到每个小数组中的最大值,然后把它们串联起来,形成一个新数组.提示:你可以用for循环来迭代数组,并通过arr[i]的方式来访问数组 ...
- 使用python找出nginx访问日志中访问次数最多的10个ip排序生成网页
使用python找出nginx访问日志中访问次数最多的10个ip排序生成网页 方法1:linux下使用awk命令 # cat access1.log | awk '{print $1" &q ...
- Java Collection - 003 高效的找出两个List中的不同元素
如题:有List<String> list1和List<String> list2,两个集合各有上万个元素,怎样取出两个集合中不同的元素? 方法1:遍历两个集合 public ...
- 找出此产品描述中包含N个关键字的长度最短的子串
阿里巴巴笔试题:给定一段产品的英文描述,包含M个英文字母,每个英文单词以空格分隔,无其他标点符号:再给定N个英文关键词,请说明思路并变成实现方法. String extractSummary(Stri ...
- Class 找出一个整形数组中的元素的最大值
目的:找出一个整形数组中的元素的最大值 以下,我们用类和对象的方法来做. #include<iostream> using namespace std; class Array_m ...
- [Python3 练习] 010 找出藏在字符串中的“密码”
题目:找出藏在字符串中的"密码" (1) 描述 1) 题源 1 Python Challenge, level 3 2) 题源 2 小甲鱼老师的 Python 课程,第 20 讲课 ...
- linq中分组查询而且获取每个分组中的第一条记录,数据用于分页绑定
LINQ分组取出第一条数据 Person1: Id=1, Name="Test1" Person2: Id=1, Name="Test1" Person3: I ...
随机推荐
- 【git】git命令集合
[在包含.git目录所在的项目根目录下,打开git Bash] 参考地址:https://www.cnblogs.com/sxdcgaq8080/p/11655170.html =========== ...
- LOOP AT GROUP语法练习
DATA:P_MENGE TYPE EKKO-WKURS. DATA:P_MENGE1 TYPE EKKO-WKURS. SELECT * FROM EKKO INTO TABLE @DATA(LT_ ...
- C# SmtpClient 发邮件
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- OSI七层模型简述
一.OSI七层参考模型 开放式系统互联通信参考模型(英语:Open System Interconnection Reference Model,缩写为 OSI),简称为OSI模型(OSI model ...
- golang中,slice的几个易混淆点
slice在golang中是最常用的类型,一般可以把它作为数组使用,但是比数组要高效呀.不过,我感觉这个东西用的不好坑太多了.还是需要了解下他底层的实现 slice的结构定义 type slice s ...
- JVM底层原理及调优之笔记一
JVM底层原理及调优 1.java虚拟机内存模型(JVM内存模型) 1.堆(-Xms -Xmx -Xmn) java堆,也称为GC堆,是JVM中所管理的内存中最大的一块内存区域,是线程共享的,在JVM ...
- switch case加范围判断
switch case是可以加范围判断的,但是语法有少许变化,参数不能写在switch里面,而是写在外面,如: const i = 3; switch (true) { case (i <= 0 ...
- 从webkit内核简单看css样式和css规则优先级(权重)
目录 webkit中样式相关类及类间关系 样式规则匹配 权重(优先级)计算 权重相同时的覆盖原则 webkit中样式相关类及类间关系 资料来源: <webkit技术内幕> 结构相关类: 1 ...
- [基础]Deep Learning的基础概念
目录 DNN CNN DNN VS CNN Example 卷积的好处why convolution? DCNN 卷积核移动的步长 stride 激活函数 active function 通道 cha ...
- linux (01) linux基础
一.了解linux 都有哪些职位 机房运维 负责服务器的上下架 桌面运维 专业修电脑 修打印机 系统管理员 负责liunux操作系统的维护 运维开发 linux + python 把平时自己手敲 ...