--select @type3Count=count(1) from TWEB_ALogisticsYD bb
-- LEFT JOIN dbo.TWEB_BCompanyJJ as B3 WITH(NOLOCK) ON B3.CompanyNo=bb.Col_117
--where bb.Col_062 is not null and Col_049 is not null and (
--(( bb.Col_043=@CompanyNO or (bb.Col_117=@CompanyNO and bb.Col_117<>Col_043 and bb.Col_117<>isnull(bb.Col_051,''))) AND bb.COL_117 NOT IN ( N'57378369305', N'02850617763', N'75772902711' ))
-- or (bb.Col_045=@Phone or bb.Col_092=@Phone)
-- ) and (B3.LoadFlag IS NULL OR B3.LoadFlag=0)
SELECT @type3Count=COUNT(1) FROM (
SELECT bb.Col_003,bb.Col_117
FROM TWEB_ALogisticsYD bb
WHERE bb.Col_062 IS NOT NULL AND Col_049 IS NOT NULL
AND (
(bb.Col_043 = @CompanyNO OR (bb.Col_117 = @CompanyNO AND bb.Col_117 <> Col_043 AND bb.Col_117 <> ISNULL(bb.Col_051, '')))
AND bb.Col_117 NOT IN (N'', N'', N'')
) UNION SELECT bb.Col_003,bb.Col_117
FROM TWEB_ALogisticsYD bb
WHERE bb.Col_062 IS NOT NULL AND Col_049 IS NOT NULL AND (bb.Col_045 = @Phone OR bb.Col_092 = @Phone)
) AS t
LEFT JOIN dbo.TWEB_BCompanyJJ AS B3 WITH ( NOLOCK ) ON B3.CompanyNo = t.Col_117
where B3.LoadFlag IS NULL OR B3.LoadFlag = 0

两个表用or关联的 把or拆开

第二种方案

select @type9Count=count(1) from TWEB_ALogisticsYD bb
LEFT JOIN dbo.TWEB_BCompanyJJ as B3 WITH(NOLOCK) ON B3.CompanyNo=bb.Col_117

这一句用的比较多,数据都在TWEB_ALogisticsY 中 可以先通过条件 把TWEB_ALogisticsYD的数据先查出来。放到中间表中 再进行关联

----------------------------------

task的异步方式

Task.Run(() =>
{
try
{
l.model.FourLevelID = DAL.TB_AddressInfoDAL.GetFourLevelID(l.model.AdminCode);
l.model.DetailAddressType = 1;
//地图慧取到点部的地址反写到地址库表中

DAL.TB_AddressInfoDAL.Add(l.model);
l.model.Location = 2;
l.model.Source = "客户端";
DAL.TB_AddressInfoDAL.AddToSource(l.model, "HandleAddress_V2_2");//插入统计表
}
catch (Exception ex)
{
NLog.LogManager.GetCurrentClassLogger().Error(ex, "UploadYdList_Client回写数据->model:{0}", JsonConvert.SerializeObject(l.model));
}
});

---------------------------------------------

Parallel.For(0, forNum, i =>
{
Dictionary<string, string> dic = new Dictionary<string, string>();
dic.Add("ak", AppConst.DituhuiAk);
dic.Add("addresses", JsonConvert.SerializeObject(post.Skip(i * size).Take(size)));
dic.Add("need_district", "true");
dic.Add("callback", "");
dic.Add("related_point_fields", "name");

res.Add(HttpHelper.PostFormData(url, dic));
});

Parallel 的并行方式

select xx,phone FROM send  a JOIN (
select '' phone union select '' ………… UNION SELECT '' ) b
on a.Phone=b.phone
--替代下面 很多数据隔开的时候
in('','',''…………)

一种sql优化方案的更多相关文章

  1. SQL优化:一些简单的又实用的SQL优化方案【转】

    面试过程中,面试官有极高的频率会问道数据库的优化,SQL语句的优化,网上关于SQL优化的教程很多,但是鱼目混杂,显得有些杂乱不堪.近日有空整理了一下,写出来跟大家分享一下,其中有错误和不足的地方,还请 ...

  2. 数据库sql优化方案

    声明:这个不是我自己写的,是我们老师给我,我拿出来分享一下! 为什么要优化:     随着实际项目的启动,数据库经过一段时间的运行,最初的数据库设置,会与实际数据库运行性能会有一些差异,这时我们    ...

  3. MySQL 慢 SQL & 优化方案

    1. 慢 SQL 的危害 2. 数据库架构 & SQL 执行过程 3. 存储引擎和索引的那些事儿 3.1 存储引擎 3.2 索引 4. 慢 SQL 解决之道 4.1 优化分析流程 4.2 执行 ...

  4. 阅读笔记06-架构师必备最全SQL优化方案(2)

    四.基础优化 1.优化思路? 定位问题点吮吸:硬件-->系统-->应用-->数据库-->架构(高可用.读写分离.分库分表). 处理方向:明确优化目标.性能和安全的折中.防患未然 ...

  5. 思考设计SQL优化方案

    一.优化的哲学 注:优化有风险,涉足需谨慎 1.优化可能带来的问题? 优化不总是对一个单纯的环境进行,还很可能是一个复杂的已投产的系统: 优化手段本来就有很大的风险,只不过你没能力意识到和预见到: 任 ...

  6. 阅读笔记05-架构师必备最全SQL优化方案(1)

    一.优化的哲学 1.优化可能带来的问题? 优化不总是对一个单纯的环境进行,还很可能是一个复杂的已投产的系统: 优化手段本来就有很大的风险,只不过你没能力意识到和预见到: 任何的技术可以解决一个问题,但 ...

  7. SQL优化方案

    1:建立中间表,将步骤分解. 2:避免全字段查询,只查需要的字段 3:限定条件查询,避免先关联后写条件, --优化交货数据  --建临时表T_JHinfo  select A.VBELN,C.VBEL ...

  8. MySQL——企业SQL优化方案

    一.大表 (1)列多: 纵向拆分大表: create t1; insert into t1 select id, name from test; (2)行多: 根据数据存放特点和逻辑进行横向拆分大表: ...

  9. sql优化详细介绍学习笔记

    因为最近在面试,发现sql优化这个方面问的特别特别的多.之前都是零零星星,不够全面的了解一点,刚刚在网上查了一下,从 http://blog.csdn.net/zhushuai1221/article ...

随机推荐

  1. flask类装饰器

    from flask import Flask,request,views from functools import wraps app = Flask(__name__) #自定义登录装饰器 de ...

  2. 菜鸟系列Fabric——Fabric 1.4共识机制(5)

    fabric 共识机制 由于fabric是分布式的系统,因此需要共识机制来保障各个节点以相同的顺序状态保存账本,达成一致性. 在当前fabric1.4版本中,存在三种共识机制,分别是solo,kafk ...

  3. [c++] SYSTEM_INFO

    SYSTEM_INFO,Win32 API函数GetSystemInfo所使用的结构体. 说明 SYSTEM_INFO结构体包含了当前计算机的信息.这个信息包括计算机的体系结构.中央处理器的类型.系统 ...

  4. oracle查询表的结构

    SELECT t.table_name,t.column_name,t.data_type||'('||t.data_length||')', t1.comments FROM User_Tab_Co ...

  5. springdata的jpa配置文件application.xml

    <?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.spr ...

  6. nginx配置ssi实现页面拆分

    在做一个网站时,页面上会有很多重复的内容,每个页面写一遍很冗余,修改时还容易遗漏,所以可以把公共的部分写好,放在单独的HTML中,用时引用就行了. nginx配置ssi可以将单个页面拆分成一个一个的小 ...

  7. 右键添加cmd notePad++快捷键

    1.将以下文字复制到txt文本,将txt修改为reg执行后,邮件菜单查. Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directo ...

  8. webAapi

    学习目标: 掌握API和Web API的概念 掌握常见浏览器提供的API的调用方式 能通过Web API开发常见的页面交互功能 能够利用搜索引擎解决问题 typora-copy-images-to: ...

  9. U盘重装系统

    一.准备工作 (1)8G以上空间的U盘一个: (2)将U盘制作好启动工具: 1.下载启动工具制作软件(常用的有:大白菜.电脑店.老毛桃.快启动等等一系列软件,直接百度这些软件的名称,或者百度U盘启动制 ...

  10. 【From StackOverFlow】--set-upstream 和--set-upstream-to=以及--track的区别

    本文引自StackOverFlow http://stackoverflow.com/questions/26090689/git-set-upstream-to-vr-track