问题标签 [query-performance]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3238 浏览

sql-server - 在 sql server 2008 中查询大表

我们有一个包含 2.5 亿条记录(唯一的 15 位数字。聚集唯一索引列)的表,平均每天至少会被 0.7 到 90 万个请求查询。

我们有多个应用程序访问此表。每个应用程序将尝试将 500,000 条数据与这 2.6 亿条记录进行比较。

我们的应用程序将向这个大表添加更多数据,这实际上减慢了其他应用程序的查询速度。

我们如何提高查询的性能?我们如何维护这张表?分区吗? 环境:Win 2K8R2,SQL 2K8R2,64GB RAM,双处理器8核

0 投票
0 回答
588 浏览

sql - 使用 FOR XML PATH 优化查询以显示来自另一个表的逗号分隔值

我有以下查询,8179 条记录大约需要 39 秒。

如果我 commnet 出for xml path 5 列,它会在 1 秒内运行。

我如何组合这五列以便优化查询。我已经在所有表PID_No上创建了索引。Case_No

和查询中的这一部分

因为监狱表有逗号分隔 Case_No

0 投票
1 回答
133 浏览

sql - 对 Oracle 表中的唯一记录集进行采样

我有一个 Oracle 表,我需要从中为给定的一组唯一列组合的每种类型选择给定百分比的记录。

例如,

为我提供了该表中唯一记录的所有组合。我需要每个此类组合中每行的百分比。目前我正在使用以下查询来完成此操作,这既冗长又缓慢。

“值”中的后缀组合对于该表是唯一的(从第一个查询中获得)

如何提高查询的长度和速度?

0 投票
3 回答
350 浏览

mysql - 双连接查询需要 540 秒才能运行 - 我怎样才能加快速度?

一个特定的查询需要长时间才能运行,大约 540 秒(是的,9 分钟!)。这会导致负载峰值。

有没有办法可以重写查询 - 或添加索引 - 以加快速度?发生了。

询问

解释计划

表结构

0 投票
2 回答
123 浏览

mysql - 我的查询运行超过 4 秒帮助我在不到 1 秒的时间内获得结果

  1. 我的查询运行时间超过 4 秒。
  2. 我希望在不到 1 秒的时间内得到结果
  3. 帮帮我。

询问:

解释计划:

结构:

0 投票
1 回答
415 浏览

database - 如何让 Greenplum 4.2.3 只扫描预期的分区?

当我在视图中使用 unnest() 并在 select 语句中使用该视图时,Greenplum 似乎无法仅搜索预期的分区并搜索主表的所有分区。当使用子查询而不是视图时,同样的事情也适用。

例如:

我们目前有 2 个不同的服务器运行 2 个不同版本的 Greenplum。服务器 A 在旧版本 (4.2.1) 上运行,而服务器 B 在 4.2.3 上运行。运行上面相同的查询会产生不同的结果。服务器 A(旧)将在几秒钟内返回查询,而服务器 B(新)将永远返回。运行查询的解释表明服务器 A 仅对其中一个分区进行扫描(在 where 子句中包含日期和状态),而服务器 B 将对每个分区进行扫描,从而导致运行缓慢。

两个 DB 的表结构相同。运行没有嵌套的查询不会有问题。所以,我怀疑与新版本有关。我能做些什么来解决这个问题吗?

0 投票
2 回答
2408 浏览

sql - In 子句与 OR 子句的性能明智

我有一个查询如下:

考虑到这样一个表中的数据可能以百万计,下面的重组会更好吗?

或者

如果可能的话,我还需要了解性能优势。

提前致谢

0 投票
3 回答
218 浏览

sql - 案例条款执行程序

嗨,我有一个非常慢的 SQL。

我想知道的是case条款是如何工作的..??

该零件select <Some Math Logic> from table正在处理巨大的桌子。

在 Java 中,我们看到 if 语句

如果 if 语句为假,那么它里面的部分永远不会被处理,那么我想知道的是它在 oracle SQL 中是否也相同。

它是否适用于以下逻辑..??

  • 检查案例条件
  • 如果为真,则处理内部输出
  • else 处理其他输出。

还是采用以下逻辑:

  • 预处理所有子查询
  • 检查案例条件
  • 如果为真,则显示在输出内部
  • 否则显示其他输出。

请帮忙

编辑:伙计们,我不想调整上面显示的查询......这只是一个虚拟的。

我需要知道的是 case 条款是如何一步一步地工作的。

如果有人对此有一些意见,请分享

0 投票
3 回答
881 浏览

mysql - 为什么这个简单的查询需要很长时间才能执行并执行全表扫描?

简单查询需要大约 630 秒才能执行全表扫描。请帮我重写查询并建议我是否需要添加任何索引。

询问:

解释计划:

表结构:

0 投票
1 回答
550 浏览

sql - 检查列中不同值的优化方法

我正在从一列(大约 50k 条记录的表)中寻找答案,我只需要检查该列中是否至少有两个不同的值。

上面的查询给了我输出,但这不是优化的方式,因为我只想要一个布尔值的答案

即计数是否大于 1 或否?

此外,tableX 中的记录数增加会恶化查询性能,我正在寻找与表记录数无关的东西。任何帮助表示赞赏:) 谢谢。