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基 ...
随机推荐
- Lazy.js : 让 JavaScript 变懒
Lazy.js : 让 JavaScript 变懒 http://segmentfault.com/a/1190000000358463
- ServletConfig、ServletContext属性遍历
可以进行属性遍历: package com.stono.servlet; import java.io.IOException; import java.util.Enumeration; impor ...
- Canvas scale- 缩放
可以进行坐标缩放,设为负值可以翻转图片: <!DOCTYPE html> <html lang="en"> <head> <meta ch ...
- Jquery右击显示菜单事件,运用smartMenu插件。
基本格式: 1.引用jquery.smartMenu插件.css样式: <script src="gongju/jquery-1.11.2.min.js" type=&quo ...
- MEAN教程1-MongoDB安装和使用
MEAN是MongoDB.Express.AngularJS和Node.js的缩写.其理念是仅使用JavaScript一种语言来驱动整个应用.其最鲜明的特点有以下几个:1整个应用只使用一种语言:2整个 ...
- Ubuntu 制作U盘启动盘
部门需要一台Linux系统远程共享服务器,需要一个启动盘安装.但是由于公司windows 系统都安装了保安软件,而且软件的使用也是有限制的.所以不能使用UltraISO 这类软件制作U盘启动盘.还好部 ...
- 免越狱tweak应用逆向开发
对于已越狱的设备,系统默认安装了mobilesubstrate动态库,提供一个系统级的入侵管道,所有的tweak都可以依赖它来进行开发.而对于没有越狱的手机,我们需要向目标app注入libsubstr ...
- Eclipse / Intellij Idea配置Git+Maven+Jetty开发环境
作者:鹿丸不会多项式 出处:http://www.cnblogs.com/hechao123 转载请先与我联系. 最近公司给加配了Mac,本想着花一个小时的时间搭好开发环境,最后全部弄好却用了一上午 ...
- MongoDB学习总结(六) —— 数据库备份和恢复
我们都知道数据库数据经常备份是多么的重要,MongoDB作为一个数据库系统,自然提供了完善,丰富而且好用的备份与恢复机制. 以下介绍三种数据库备份和恢复的方式 > 数据目录直接拷贝 数据库目录直 ...
- Redis的二八定律
常用命令: 1.setex key 有效时间 value ----------意思就是添加并设置该键值对的存活时间 2.mset key1 value1 key2 value2 key3 value3 ...