问题标签 [query-planner]
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.
performance - 为什么 PostgreSQL 为简单的查询做出如此艰难的计划?
我有一个带有索引的 2500 万行“Zemla”表
现在我做简单的查询
并获得非常硬的查询计划
和另一个简单的查询,当我认为索引存在时应该立即执行
我的问题是,为什么 PostgreSQL 在第一次索引扫描之后会进行另一次位图堆扫描,开销如此之大?
编辑:什么是查询计划中的“位图堆扫描”?是另一个问题,因为它回答了为什么使用 OR 运算符的某些查询具有位图堆扫描。我的查询既没有 OR 也没有 AND 运算符
sql - sql查询运行速度比预期慢
我有一张桌子
a1
是主键。上有一个非聚集索引a5
。
我有一个简单的查询:
此查询运行速度明显较慢。更新查询计划中使用的统计信息并没有太大帮助。
为什么会发生这种情况?我可能做错了什么?我是查询优化的新手。
sql-server - 将图形查询计划吐为 jpeg?
我有 SQL Server,我想获得一个图形查询计划。然后,我想将其保存为 .jpg 或 .png。这可能吗?有哪些工具可用?我是新手,似乎对这种工作没有太大兴趣 - 感谢您的帮助。
sql - 如何提高下面提到的 SQL 查询中的文本列性能
有一个 SQL union all 查询和 3 个 union all 查询。在查询中添加文本列后,查询执行时间发生了显着变化CAST(c.getQuestionId AS VARCHAR(300))
。使用的数据库是SQL SERVER 2014,请性能调优高手帮忙。
上创建了 3 个索引JcccustomersAssessmentProxy
。这是一个包含 8000 万条记录的表。仅在第 3 个查询中提及显式使用索引(即 ( NOLOCK, INDEX=IX_AssessmentProxy_myJcAssessmentContext
))
myJcAssessmentContext 上有一个非聚集索引
getmycoordtoyplanver 上有一个非聚集索引
getMyEventItem 上有一个非聚集索引
这是实际执行计划的链接。
在JccClientAssessmentProxy jcc
WITH(NOLOCK,INDEX=IX_AssessmentProxy_GETMYCOORDCAREPLANVER) 添加索引后,这是新的执行计划。
mongodb - Mongo 不会通过组合两个 IXSCAN 来优化 $or 查询
我有一个orders
包含以下索引的集合,其中包括:
我正在执行以下查询:
IXSCAN
我希望这将对. 的每个分支执行有效$or
,然后结合结果:
相反,它只限制location
中的IXSCAN
,并在 中进行其余的过滤FETCH
。 有没有办法优化这个查询而不将它分成两个单独的查询?
mongodb - 为什么在执行 IXSCAN 后 Mongo 在 FETCH 中查询空过滤器
根据Mongo 文档,
该
{ item : null }
查询匹配包含item
其值为null
或不包含该item
字段的字段的文档。
我找不到这方面的文档,但据我所知,这两种情况(值是null
或字段缺失)都存储在索引中作为null
.
因此,如果我这样做db.orders.createIndex({item: 1})
then db.orders.find({item: null})
,我希望 anIXSCAN
找到所有包含item
其值为null
或不包含该item
字段的字段的文档,并且仅找到那些文档。
那么为什么在db.orders.find({item: null}).explain()
表演完之后还要filter: {item: {$eq: null}}
在FETCH
舞台上表演IXSCAN
呢?可能需要过滤掉哪些可能的文档?
我想也许undefined
值会被索引为null
,但简单的实验排除了这一点:
mysql - 从命令行/终端创建 MySQL Workbench 查询计划映像
有没有办法从命令行或终端创建 MySQL Workbench 查询计划图像并将其保存为类似这样的图像?
我在这里查看了 MySQL Workbench 文档,https://dev.mysql.com/doc/workbench/en/wb-command-line-options.html。但是看不到任何这样的选择。那么,是否有黑客甚至单独的工具来创建此图像?对此的任何帮助将不胜感激。
mysql - Hibernate查询中的Mysql索引提示
我们如何在 Hibernate 查询中指定 Mysql 索引提示?
在查询计划器没有选择正确索引的情况下,在 Mysql 查询中使用索引提示变得势在必行(参考:https ://www.percona.com/blog/2012/12/14/the-optimization-that-often-isnt-索引合并交集/)。
这可以通过此处指定的原始查询轻松完成:https ://dev.mysql.com/doc/refman/5.7/en/index-hints.html
postgresql - 在 postgresql 9.4 中强制 GIN 索引扫描
我有一张位置表(大约 2900 万行)
我希望以下查询表现良好。
但是生成的查询计划显示正在使用顺序扫描。
强行关闭 seq 扫描时
查询计划现在使用 gin 索引。
成本设置已粘贴在下面。
我正在寻找一种不对上述查询使用顺序扫描以及将顺序扫描设置为关闭等技巧的解决方案。
我尝试将值更新seq_page_cost
为 20,但查询计划保持不变。