USE [MeiDongPay_Test]
GO
/****** Object: StoredProcedure [dbo].[Job_BatchTransferOrderToMidst] Script Date: 2017/10/19 10:37:41 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER
PROC [dbo].[Job_BatchTransferOrderToMidst]
AS
SET NOCOUNT OFF
BEGIN
DECLARE @MinID INT ,--最小值
@MaxID INT ,--最大值
@GoalID INT ,--上限
@Step INT ,--步长
@StartTime DATETIME ,--约束时间
@CurrHour INT--当前小时数
SET @CurrHour = DATEPART(hh, GETDATE())
SELECT @CurrHour
--当前小时限定只在指定时间段内处理数据
IF ( @CurrHour >= 0 AND @CurrHour < 23)
BEGIN
--仅处理小于约束时间的数据
SET @StartTime = CONVERT(VARCHAR(10), GETDATE(), 23)
SELECT @StartTime
--获取最小值 最大值 上限值
SELECT @MinID = 0 ,
@MaxID = ( SELECT MIN(ID)
FROM dbo.PayOrderInfo WITH ( NOLOCK )
WHERE SubmitTime < @StartTime
) ,
@GoalID = ( SELECT MAX(ID)
FROM dbo.PayOrderInfo WITH ( NOLOCK )
WHERE SubmitTime < @StartTime
) ,
@Step = 3000
--数据处理
IF ( @MaxID <= @GoalID )
BEGIN
--边界值修正
SET @MinID = @MaxID
SET @MaxID = @MinID + @Step
IF ( @MaxID > @GoalID )
SET @MaxID = @GoalID
--启动事务
BEGIN TRAN
--创建临时表
SELECT *
INTO #tempOrder
FROM dbo.PayOrderInfo
WHERE Id BETWEEN @MinID AND @MaxID
--临时表数据插入历史表
INSERT INTO PayOrderInfo_Midst
SELECT *
FROM #tempOrder
--休眠一秒 ,大数据量度执行时休眠1s可以让cpu有机会创建其他命令
WAITFOR DELAY '00:00:01'
--源表删除已插入历史表的行
DELETE FROM dbo.PayOrderInfo
WHERE ID BETWEEN @MinID AND @MaxID
--删除临时表
DROP TABLE #tempOrder
--事务提交
COMMIT TRAN
END
END
END

  

SQLSERVER 数据调度示例,调度数据到中间表或者历史表的更多相关文章

  1. python解析发往本机的数据包示例 (解析数据包)

    tcp.py # -*- coding: cp936 -*- import socket from struct import * from time import ctime,sleep from ...

  2. mysql设计与优化以及数据库表设计与表开发规范

    一.设计问题? 1.主键是用自增还是UUID ? Innodb 中的主键是聚簇索引. 如果主键是自增的,那么每次插入新的记录,记录就会顺序添加到当前索引节点的后续位置,当一页写满,就会自动开辟一个新的 ...

  3. SqlServer表数据与excel中数据的互相复制

    一.SqlServer表数据复制到excel 1.新建查询,用sql语句把表数据读出来 2.然后,选择数据,右键,复制(也可以点击连同标题复制),复制到记事本中(不然会乱码) 3.然后再把记事本的内容 ...

  4. Cesium数据可视化-仓储调度系统可视化部分(附github源码)

    Cesium数据可视化-仓储调度系统可视化部分 目的 仓储调度系统需要一个可视化展示物资运输实况的界面,需要配合GPS设备发送的位置信息,实时绘制物资运输情况和仓储仓库.因此,使用Cesium可视化该 ...

  5. kettle抽取数据发送邮件Linux调度

    kettle抽取数据发送邮件Linux调度 #1.进入kettle安装目录 然后执行sqoop.sh文件启动kettlecd /app/pdi-ce-7.1.0.0-12/data-integrati ...

  6. PowerDesigner创建表 拷贝创建表语句 SQLSERVER创建数据库 使用查询 创建表 并且添加数据

    PowerDesigner创建表 : 1.双击打开PowerDesigner   2.双击打开Create model 3左键点击Model  types,再点击Physical    Data  m ...

  7. 在MS SQLSERVER中如何最快的速度清空所有用户表的数据

    有时候我们需要清空数据库中所有用户表的数据,如果一张表一张表的清空的话,遇到一个庞大的数据系统估计得崩溃了.  用游标加上用变量来引用表名就可以做到这一点. 用变量来引用表名对表操作可以用在存储过程中 ...

  8. sqlserver 数据库 的数据库个数统计 表个数统计 表的数据量统计(转载)

    http://www.cnblogs.com/qinche/archive/2012/08/09/app.html 由于今天要监控数据,急需统计实例中1有多少库2库里有多少表3每个表有多少数据 --将 ...

  9. SQLSERVER将一个文件组的数据移动到另一个文件组

    SQLSERVER将一个文件组的数据移动到另一个文件组 有经验的大侠可以直接忽视这篇文章~ 这个问题有经验的人都知道怎麽做,因为我们公司的数据量不大没有这个需求,也不知道怎麽做实验 今天求助了QQ群里 ...

随机推荐

  1. C++ vector错误(1)

    在用C++的vector的时候,要保证访问的下标不能超过vector的size.否则出现msvcp60.dll 访问禁止.

  2. 20165324_mybash

    20165324_mybash 实验要求 实验要求: 使用fork,exec,wait实现mybash 写出伪代码,产品代码和测试代码 发表知识理解,实现过程和问题解决的博客(包含代码托管链接) 背景 ...

  3. 编程当道,学点Python技术好傍身

    为了填满AI时代的人才缺口,编程语言教育都从娃娃抓起了!如果你还不懂Python是什么将来怎么给孩子辅导作业呢? Python新手入门教程 近期,浙江省信息技术课程改革方案出台,Python言语现已断 ...

  4. VS2010/MFC编程入门之十三(对话框:属性页对话框及相关类的介绍)

    前面讲了模态对话框和非模态对话框,本节开始鸡啄米讲一种特殊的对话框--属性页对话框.另外,本套教程所讲大部分对VC++各个版本均可适用或者稍作修改即可,但考虑到终究还是基于VS2010版本的,所以将& ...

  5. DHCP服务器配置实践

    实验背景:在LINUX系统上为一园区网络配置DHCP服务器,给网络内各主机自动分配IP地址,地址池范围为:192.168.X.100~192.168.X.200,配置作用域选项,其中网关为:192.1 ...

  6. zw版【转发·台湾nvp系列Delphi例程】HALCON MoveRectangle

    zw版[转发·台湾nvp系列Delphi例程]HALCON MoveRectangle procedure TForm1.Button1Click(Sender: TObject);var img : ...

  7. C# 解析soap数据为json格式

    数据格式: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soa ...

  8. CentOS禁用笔记本touchpad

    自己在家笔记本装来个双系统玩玩,发现触摸板很烦人,禁用! 1.安装一个小神器 yum install xorg-x11-apps 2.查看你到输入硬件对应的id,方便禁用命令 [root@huangz ...

  9. 【图像处理】计算Haar特征个数

    http://blog.csdn.net/xiaowei_cqu/article/details/8216109 Haar特征/矩形特征 Haar特征本身并不复杂,就是用图中黑色矩形所有像素值的和减去 ...

  10. java 读CSV 和 Excel

    1.csv和excel读写对比 开发中经常遇到数据导入和导出功能,csv 和 excel是最常见的数据格式,本文比较了下csv和excel读写相同数据的效率: 测试数据格式一 用上面模板数据生成的测试 ...