0 0

如何优化这条sql语句?3

下面这个sql语句执行起来非常慢,不知道有什么办法能优化一下
[code=SQL]
SELECT t1.wareid as wid, t1.OrgId, jc.creatdate FROM chuguan AS jc INNER JOIN 
(SELECT jc.OrgId, jq.wareid, MAX(jc.kdanhao) AS kdanhao
  FROM chuguan AS jc WITH (nolock)
  INNER JOIN qingdan AS jq WITH (nolock) ON jc.kdanhao = jq.kdanhao
  WHERE (jc.churu = '入库') AND (jc.feilei = '放货' OR jc.feilei = '移动')
  AND (jq.wareid >= 1000) AND (jq.wareid <= 100000)
  AND (jc.OrgId IN (6,3,10,4,9,544,600,432,322,545,5,7,8,316))
  GROUP BY jc.OrgId, jq.wareid) AS t1
ON jc.kdanhao = t1.kdanhao

SQL 
2012年3月05日 10:21

3个答案 按时间排序 按投票排序

0 0

表连接操作本来性能就比较差。
可以考虑拆开多次查询。
或者根据业务特点,在表连接的时候先连接那些结果集较少的作为驱动,再从少量的中间结果集中再做表连接。
另外记得对那些筛选字段和排序字段做索引

2012年3月13日 22:47
0 0

跟sql关系不大,加索引或者主键吧

2012年3月08日 17:27
0 0

最好把执行计划发上来~

一般建议直接用连接查询,不用INNER JOIN

2012年3月07日 12:25

相关推荐

    32丨MySQL调优之SQL语句:如何写出高性能SQL语句?.html

    32丨MySQL调优之SQL语句:如何写出高性能SQL语句?.html

    SQL语句最优化

    SQL语句最优化SQL语句最优化SQL语句最优化SQL语句最优化

    Delphi adoquery处理多条SQL语句

    在这个例子中,我们首先通过 `BeginTrans` 开始一个事务,然后依次执行多条 SQL 插入语句,最后使用 `CommitTrans` 提交事务。如果在执行过程中出现异常,则使用 `RollbackTrans` 回滚事务。 ##### 3. 更新批处理 ...

    access 一次执行多条sql语句

    本文将详细介绍如何在Access中实现一次执行多条SQL语句,并通过具体的代码示例来帮助理解这一过程。 #### 一、基础知识概述 1. **OLE DB**: OLE DB (Object Linking and Embedding, Database) 是一种用于访问各种...

    sql语句万能生成器,sql语句,sql语句生成

    这就是"SQL语句万能生成器"的用途所在。 SQL语句生成器是一种软件工具,它能够帮助开发者自动生成SQL语句,大大减轻了编写和调试的工作负担。这种工具通常包含各种功能,如:根据数据库结构自动生成SELECT、INSERT...

    SQL优化 SQL优化软件 SQL优化工具

    3. **建议与改写**:自动提供优化建议,包括修改SQL语句结构、创建或调整索引、优化连接方式等,有时甚至可以直接改写SQL语句以提高性能。 4. **历史记录与报告**:记录SQL语句的执行历史,生成性能报告,便于跟踪...

    通过分析SQL语句的执行计划优化SQL

    通过分析SQL语句的执行计划优化SQL 本文档主要介绍了与SQL调整有关的内容,涉及多个方面:SQL语句执行的过程、ORACLE优化器、表之间的关联、如何得到SQL执行计划、如何分析执行计划等内容。通过从浅入深的方式了解...

    sql语句sql语句sql语句sql语句.txt

    sql语句sql语句sql语句sql语句sql语句

    Oracle Sql语句转换成Mysql Sql语句

    OracleSqlConvert4MysqlSqlTool.java这个源码工具,根据描述,应该是实现了自动读取Oracle SQL语句,分析其结构,并根据MySQL的语法规则进行转换,然后将转换后的SQL语句保存到指定的目标文件中。这个工具简化了手动...

    Oracle批处理:使用C# 自带Oracle驱动一次执行多条Sql语句

    本文将深入探讨如何在C#中利用Oracle自带的驱动来实现批处理,以一次执行多条SQL语句。 首先,我们需要了解Oracle的数据驱动,即ODP.NET(Oracle Data Provider for .NET)。这是Oracle公司为.NET开发者提供的一个...

    Effective MySQL之SQL语句最优化.pdf

    尽管如此,我将基于标题和描述中提供的关键词“Effective MySQL之SQL语句最优化”来构建知识点。 1. SQL语句最优化的概念:在数据库管理中,对SQL语句进行优化是提高数据库性能的关键环节。最优化的SQL语句能够在...

    sql语句说明sql语句说明sql语句说明.zip

    sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明sql语句说明...

    oracle性能优化之SQL语句优化

    本文将深入探讨SQL语句优化,包括优化器的工作原理、优化工具、数据访问方法以及如何收集统计信息来辅助优化。 首先,Oracle的优化器(Optimizer)是一种内部机制,它负责分析SQL语句并确定执行查询的最佳路径。...

    PB脚本中SQL语句写法与SQL中语句写法对照

    PB脚本中SQL语句写法与SQL中语句写法对照 PB脚本中SQL语句写法与SQL中语句写法对照是非常重要的知识点,因为PB脚本和SQL语言在写法和应用中有所不同。本文将对PB脚本中SQL语句写法和SQL中语句写法进行对比和分析。 ...

    通过分析SQL语句的执行计划优化SQL(总结)

    这篇博客"通过分析SQL语句的执行计划优化SQL(总结)"深入探讨了这一主题,下面将对其中的主要知识点进行详细阐述。 1. **执行计划的理解**: 执行计划是数据库管理系统在执行SQL语句之前预先生成的一种详细步骤,它...

    sql语句中用问号代替参数

    在SQL语句中,使用问号(`?`)作为参数占位符是一种常见的做法,尤其是在编程语言如Java中与数据库交互时。这种方式被称为预编译语句或参数化查询,它具有重要的安全性和性能优势。 ### SQL参数化查询的概念 参数化...

    sql语句优化心得

    这条SQL语句旨在从`hm_member_ext`表中获取指定成员(`memberId=951`)的最新扩展信息。根据日志记录,可以看到: - `Query_time`: 查询总耗时为8.416321秒。 - `Rows_examined`: 共检查了18017行数据。 这表明...

    Java打印漂亮的SQL语句(被格式化的SQL语句)

    "标签"进一步强调了这个工具的关键特性,包括"Java输出漂亮的SQL语句",这意味着它是一个Java环境下的解决方案,能够集成到Java项目中,通过Java代码来调用和实现SQL语句的格式化。另一个标签"SQL格式化"则明确了它...

    一个完整程序只有一条SQL语句

    标题提到的"一个完整程序只有一条SQL语句",这展示了如何高效地利用SQL语句来完成数据操作。在这个程序中,开发者通过一条复杂的SQL语句,实现了对dataGrid的数据进行增、删、改、查(CRUD)操作。在C#环境下,...

    利用Excel批量生成单条SQL语句

    在IT行业中,数据库管理和数据处理是一项重要的任务,而利用Excel批量生成单条SQL语句能够极大地提高工作效率。这里我们将深入探讨这一主题,了解如何通过配置模板、导入Excel数据以及运用JavaScript脚本来实现这一...

Global site tag (gtag.js) - Google Analytics