SQL一次查出相关类容避免长时间占用表(上)
/*
server:
db: EDI
*/
-- 以下案例多次查询同一张表,仅有组合条件Name+Direction不同
--可以使用一次查出相关类容避免长时间占用表
USE EDI
GO
DECLARE @OutBoundBusinessID_PO int
,@InboundBusinessID_ItemCatalog int
,@InboundBusinessID_Inventory int
,@InboundBusinessID_ShipNotice int
,@InboundBusinessID_FunctionAck int
,@OutboundBusinessID_FunctionAck int SELECT TOP 1
@OutBoundBusinessID_PO = ID
FROM dbo.EDI_CFG_Business WITH(NOLOCK)
WHERE
Name = 'PO'
AND Direction = 'O'
SELECT TOP 1
@InboundBusinessID_ItemCatalog = ID
FROM dbo.EDI_CFG_Business WITH(NOLOCK)
WHERE
Name = 'ItemCatalog'
AND Direction = 'I'
SELECT TOP 1
@InboundBusinessID_Inventory = ID
FROM dbo.EDI_CFG_Business WITH(NOLOCK)
WHERE
Name = 'Inventory'
AND Direction = 'I'
SELECT TOP 1
@InboundBusinessID_ShipNotice = ID
FROM dbo.EDI_CFG_Business WITH(NOLOCK)
WHERE
Name = 'ShipNotice'
AND Direction = 'I'
SELECT TOP 1
@InboundBusinessID_FunctionAck = ID
FROM dbo.EDI_CFG_Business WITH(NOLOCK)
WHERE
Name = 'FunctionAck'
AND Direction = 'I'
SELECT TOP 1
@OutboundBusinessID_FunctionAck = ID
FROM dbo.EDI_CFG_Business WITH(NOLOCK)
WHERE
Name = 'FunctionAck'
AND Direction = 'O'
select @OutBoundBusinessID_PO
,@InboundBusinessID_ItemCatalog
,@InboundBusinessID_Inventory
,@InboundBusinessID_ShipNotice
,@InboundBusinessID_FunctionAck
,@OutboundBusinessID_FunctionAck -----更改后
USE EDI
GO
DECLARE @OutBoundBusinessID_PO int
,@InboundBusinessID_ItemCatalog int
,@InboundBusinessID_Inventory int
,@InboundBusinessID_ShipNotice int
,@InboundBusinessID_FunctionAck int
,@OutboundBusinessID_FunctionAck int select @OutBoundBusinessID_PO=POO
,@InboundBusinessID_ItemCatalog=ItemCatalogI
,@InboundBusinessID_Inventory=InventoryI
,@InboundBusinessID_ShipNotice=ShipNoticeI
,@InboundBusinessID_FunctionAck=FunctionAckI
,@OutboundBusinessID_FunctionAck=FunctionAckO
--select POO,ItemCatalogI,InventoryI,ShipNoticeI,FunctionAckI,FunctionAckO
from
(
select ID,Name_Direction
from
(
select ID,Name+Direction as Name_Direction FROM dbo.EDI_CFG_Business WITH(NOLOCK)
where
Name in('PO','ItemCatalog','Inventory','ShipNotice','FunctionAck')
and Direction in('I','O')
) as T1
where Name_Direction in('POO','ItemCatalogI','InventoryI','ShipNoticeI','FunctionAckI','FunctionAckO')
) as T2
pivot
(
max(ID)
for
Name_Direction in([POO],[ItemCatalogI],[InventoryI],[ShipNoticeI],[FunctionAckI],[FunctionAckO]) ) as piv select @OutBoundBusinessID_PO
,@InboundBusinessID_ItemCatalog
,@InboundBusinessID_Inventory
,@InboundBusinessID_ShipNotice
,@InboundBusinessID_FunctionAck
,@OutboundBusinessID_FunctionAck
SQL一次查出相关类容避免长时间占用表(上)的更多相关文章
- SQL一次查出相关类容避免长时间占用表(下)
/* server: db: EDI */ -- 以下案例多次查询同一张表,仅有Name条件不同 --可以使用一次查出相关类容避免长时间占用表 USE EDI GO DECLARE @FileType ...
- 在线数据库表(sql语句)生成java实体类工具
相信每个做java开发的读者,都接触过SQL建表语句,尤其是在项目开发初期,因为数据库是项目的基石. 在现代项目开发中,出现了许多ORM框架,通过简单的实体映射,即可实现与数据库的交互,然而我们最初设 ...
- SQL Server数据库读取数据的DateReader类及其相关类
之前学了几天的SQL Server,现在用C#代码连接数据库了. 需要使用C#代码连接数据库,读取数据. 涉及的类有: ConfigurationManage SqlConnection SqlCom ...
- Sql Server中的数据类型和Mysql中的数据类型的对应关系(转)
Sql Server中的数据类型和Mysql中的数据类型的对应关系(转):https://blog.csdn.net/lilong329329/article/details/78899477 一.S ...
- 第三百零七节,Django框架,models.py模块,数据库操作——表类容的增删改查
Django框架,models.py模块,数据库操作——表类容的增删改查 增加数据 create()方法,增加数据 save()方法,写入数据 第一种方式 表类名称(字段=值) 需要save()方法, ...
- 五 Django框架,models.py模块,数据库操作——表类容的增删改查
Django框架,models.py模块,数据库操作——表类容的增删改查 增加数据 create()方法,增加数据 save()方法,写入数据 第一种方式 表类名称(字段=值) 需要save()方法, ...
- day15--Java常用类之日期相关类
Java常用类 3.日期相关类 3.1Date类 在标准Java类库中包含一个Date类,它的对象表示一个特定的瞬间,精确到毫秒.在网上商城下单时,在对报销单进行审核时,都需要获取当前的时间,通过Da ...
- Android随笔之——Android时间、日期相关类和方法
今天要讲的是Android里关于时间.日期相关类和方法.在Android中,跟时间.日期有关的类主要有Time.Calendar.Date三个类.而与日期格式化输出有关的DateFormat和Simp ...
- 21 BasicTaskScheduler基本任务调度器(一)——Live555源码阅读(一)任务调度相关类
21_BasicTaskScheduler基本任务调度器(一)——Live555源码阅读(一)任务调度相关类 BasicTaskScheduler基本任务调度器 BasicTaskScheduler基 ...
随机推荐
- I帧/P帧/B帧---术语解释
视频压缩中,每帧代表一幅静止的图像.而在实际压缩时,会采取各种算法减少数据的容量,其中IPB就是最常见的. 简单地说,I帧是关键帧,属于帧内压缩.就是和AVI的压缩是一样的. P是向前搜索的意思.B ...
- python 的日志相关应用
python日志主要用logging模块; 示例代码如下: #coding:utf-8 import logging class logger(): ''' %(asctime)s %(filenam ...
- JavaScript从作用域到闭包
目录 作用域 全局作用域和局部作用域 块作用域与函数作用域 作用域中的声明提前 作用域链 函数声明与赋值 声明式函数.赋值式函数与匿名函数 代码块 自执行函数 闭包 作用域(scope) 全局作用域 ...
- 深入浅出妙用 Javascript 中 apply、call、bind
这篇文章实在是很难下笔,因为网上相关文章不胜枚举. 巧合的是前些天看到阮老师的一篇文章的一句话: "对我来说,博客首先是一种知识管理工具,其次才是传播工具.我的技术文章,主要用来整理我还不懂 ...
- 匹配PC和移动端
方法1: var browser={ versions:function(){ var u = navigator.userAgent, app = navigator.appVersion; ret ...
- 一个web应用的诞生(6)--用户账户
之前登录注册的功能都已经完成,但是登录成功回到首页发现还是白茫茫的一片,对的,title一直都写得博客,那么最终目的也是写出一个轻博客来,但是,在发表文章之前是不是要先记录一下登录状态呢? 用户登录 ...
- FZU 1889 龟兔赛跑
Problem 1889 龟兔赛跑 Accept: 1240 Submit: 1650Time Limit: 1000 mSec Memory Limit : 32768 KB Probl ...
- [Selenium With C#学习笔记] Lesson-02 Web元素定位
使用Selenium来做自动化测试,一般的流程是:查找定位元素--->操作元素--->断言,那么第一步我们需要能够完成查找并定位元素,Selenium目前提供了8种基本定位方法,可根据实际 ...
- tornado学习 - TCPServer 实现聊天功能
最近学习tornado框架,其中有很多值得学习的模块,鉴于某位学长的建议,也决定好好看看tornado.tcpserver. 关于TCP协议详细介绍可查阅wiki. 对于TCP服务器,基本的操作tor ...
- Javascript高级程序设计——Javascript简史+使用Javascript
一.Javascipt简史 1.了解Javascript历史 Netscape(Javascript1.0).Microsoft(JScript)到JS1.1,再到ECMA-262标准 2.知道ECM ...