0 0

一个关于查询的优化5

有个查询语句
比如:select * form tablename where id in ()
在in()里面条件过多,比如有200多个, 我试了下要20几秒(表里面数据有点多,10多W)
这个语句该怎么优化? 或者用其它什么方法.


问题补充:
doctoryangming 写道
in的语句中是常量还可以 如果是变量则会很慢 如果变量达到你说的那么多那你的数据库服务器死定了,我以前也遇到过 你可以试试这种解决方发

  select * from tablename where FIND_IN_SET  (id,'3111,3112,3113,3117')   后面的是你传入的参数列表  必须以,号分隔
而且id不能含有,号  一般id也不会又逗号的  你可以拿过去试试 行不行给个反馈!


呵呵,其实那个字段不是id,我只是随便写的一个,我用另一个语句解决了,感觉速度比较快:
select a.* from tb a,(select @id1 as id union select @id2) b
where a.id=b.id
2011年3月25日 11:41

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

0 0

in的语句中是常量还可以 如果是变量则会很慢 如果变量达到你说的那么多那你的数据库服务器死定了,我以前也遇到过 你可以试试这种解决方发

  select * from tablename where FIND_IN_SET  (id,'3111,3112,3113,3117')   后面的是你传入的参数列表  必须以,号分隔
而且id不能含有,号  一般id也不会又逗号的  你可以拿过去试试 行不行给个反馈!

2011年3月25日 13:35

相关推荐

    数据库查询优化算法

    当遇到一个查询时,RBO会按照这些规则顺序应用它们,生成一个新的等价查询计划。尽管这种方法简单直观,但它无法根据具体数据分布做出最佳决策,可能在某些情况下产生次优的执行计划。 3. 动态规划优化(Dynamic ...

    sql查询优化(提高MySQL数据库查询效率的几个技巧)

    在 MySQL 数据库中,查询优化是一个非常重要的方面。在实际应用中,高效的查询可以提高整个系统的性能和响应速度。下面我们将介绍几个提高 MySQL 数据库查询效率的技巧。 使用 Statement 进行绑定查询 使用 ...

    sql查询优化 查询优化

    SQL查询优化是数据库管理...总之,SQL查询优化是一个涉及多个层面的综合过程,需要结合具体的应用场景和数据库系统特性,通过多种手段来实现。正确理解和运用这些优化技巧,能够显著提升数据库应用的性能和响应速度。

    MySQL数据库查询优化

    预计时间2小时,每小时一个课程段(子查询是SQL查询优化的重点内容,务必掌握好) 第5课 查询优化技术理论与MySQL实践(三)------视图重写与等价谓词重写 什么是视图重写?哪些类型的视图可以被优化?MySQL是怎么...

    Oracle 多表查询优化

    Oracle 多表查询优化 Oracle 多表查询优化是指在 Oracle 数据库管理系统中,为了提高多表查询的效率和性能采取的一些优化策略和技术。在 Oracle 中,多表查询是指从多个表中检索数据的操作。这种操作可能会占用大量...

    数据库查询优化论文

    它接收物理运算符树作为输入,其中每个节点代表一个物理运算符,边表示数据流。引擎的任务是根据运算符树的结构,有效地处理数据流,生成查询结果。 #### 四、查询优化的挑战与策略 查询优化面临的主要挑战包括...

    分布式数据库查询优化

    ### 分布式数据库查询优化详解 #### 一、背景与挑战 随着信息技术的快速发展和各行各业对数据处理需求的增加,数据库系统面临着前所未有的挑战。一方面,数据量的急剧增长要求数据库具备更高的存储能力和更快的...

    百万数据查询优化海量数据查询优化

    - **使用EXISTS而非IN**:在某些场景下,EXISTS通常比IN更高效,因为它在找到第一个匹配项后就会停止。 - **限制返回结果**:使用LIMIT或TOP来限制查询返回的结果数量,尤其是对大数据集的查询。 - **避免使用NOT...

    PostgreSQL Like模糊查询优化方案

    位图索引尤其适合在低基数(low-cardinality)字段上的模糊查询,它能将多个行的值合并为一个位图,从而减少I/O操作。 最后,不要忘记监控和调整查询计划。使用EXPLAIN和ANALYZE命令分析查询执行过程,检查是否存在...

    一个端到端的基于深度学习的查询优化引擎.pdf

    《一个端到端的基于深度学习的查询优化引擎》探讨了如何利用深度学习技术改进数据库查询优化器,以提升查询性能和效率。传统的查询优化器主要依赖于统计信息和采样来估算基数,以及采用固定的查询计划策略,如LEFT-...

    Oracle查询优化改写 技巧与案例.pdf

    Oracle查询优化是数据库管理中的重要环节,它直接关系到数据库的性能和响应速度。针对Oracle数据库的查询优化,本文件提供了丰富的技巧和案例分析,以帮助读者深入理解优化原理,并能在实际工作中学以致用。 首先,...

    Sql Server查询优化

    本文主要探讨了Microsoft SQL Server中的查询优化技术,以及影响其性能的主要因素,并针对每一个问题提供了相应的解决方案。 首先,Microsoft SQL Server是一个关系型数据库管理系统,它使用MS-SQL和Transact-SQL...

    Postgres查询优化方案

    综上所述,Postgres查询优化是一个多方面、系统性的工作,涉及到索引、查询语句、数据库结构、硬件配置等多个层面。通过对这些方面的深入理解和实践,我们可以有效应对大数据量下的查询挑战,实现高效的数据访问。...

    Oracle查询优化改写技巧与案例

    《Oracle查询优化改写技巧与案例》不讲具体语法,只是以案例的形式介绍各种查询语句的用法。第1~4章是基础部分,讲述了常用的各种基础语句,以及常见的错误和正确语句的写法。这部分的内容应熟练掌握,因为日常查询...

    关系查询处理和查询优化

    关系查询处理和查询优化是数据库管理系统(DBMS)中的核心组件,负责将用户的SQL查询转化为物理执行计划,并在可能的情况下优化该计划以提高查询效率。这一过程主要包括查询分析、查询检查、查询优化和查询执行四个...

    Oracle查询优化改写技巧与案例2.zip

    《Oracle查询优化改写技巧与案例》不讲具体语法,只是以案例的形式介绍各种查询语句的用法。第1~4章是基础部分,讲述了常用的各种基础语句,以及常见的错误和正确语句的写法。这部分的内容应熟练掌握,因为日常查询...

    查询优化.pdf

    总结来说,MySQL查询优化是一个复杂的过程,涉及到查询优化器的决策过程和索引优化原理。理解这些原理有助于更好地设计数据库结构、编写高效SQL语句和提升数据库性能。通过实践中的不断尝试与分析,能够积累经验,...

    《Oracle查询优化改写技巧与案例》PDF版本下载.txt

    根据提供的文件信息,本文将对《Oracle查询优化改写技巧与案例》这一主题进行详细的解析,涵盖Oracle查询优化的基本概念、重要性、改写技巧及其实际应用案例。 ### 一、Oracle查询优化概述 #### 1.1 查询优化定义 ...

    sql查询优化总结

    SQL查询优化是数据库管理中的一项重要任务,旨在提高查询效率,减少资源消耗,尤其是在处理大量数据时。本文将深入探讨几个关键的优化策略。 首先,影响SQL性能的主要原因之一是对大结果集进行高成本操作,例如排序...

Global site tag (gtag.js) - Google Analytics