问题标签 [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.
sql - Mysql 查询性能——
我有以下 Mysql 查询
结果 :
问题 :
- 我怎么知道这个查询的执行时间?
- 该表
MdhRawAsset
包含 3750 万条数据,有没有更好的方法来编写这个查询?
sql - 为什么这个查询在没有索引的情况下会更快?
我继承了一个新系统,我正在尝试对数据进行一些改进。我正在尝试改进这张表,但似乎无法理解我的发现。
我有以下表结构:
该表中有大约 220k 条记录。我需要返回日期大于特定日期的所有记录。在这种情况下,2009 年 12 月 1 日。此查询将返回大约 66k 条记录,运行大约需要 4 秒。从我过去研究过的系统来看,这似乎很高。特别是考虑到表中的记录很少。所以我想把时间缩短。
所以我想知道有什么好的方法可以降低它?我尝试将日期列添加到表中并将字符串日期转换为实际日期列。然后我在该日期列上添加了一个索引,但时间保持不变。鉴于没有那么多记录,我可以看到表扫描如何快速,但我认为索引可以缩短时间。
我还考虑过只查询月份和年份列。但我还没有尝试过。如果可能,希望将其保留在日期列之外。但如果不是我可以改变它。
任何帮助表示赞赏。
编辑:这是我试图运行并测试表速度的查询。我通常会列出列,但为了简单起见,我使用了 * :
编辑2:所以我提到我试图创建一个包含recvddate数据但作为日期而不是varchar的日期列的表。这就是上面查询中的 TicketRecvdDateTime 列。我针对此表运行的原始查询是:
sql - SQL EXISTS 性能
我知道 SQLEXISTS
检查是否存在行,但是它会评估整个表达式吗?例如,会是这样的:
比这样的更快:
sql - MySQL 查询性能
我有以下表结构:
我需要添加EVENT_COMMENTS
应该是文本字段或非常大的字段VARCHAR
。
我有 2 个地方可以查询此表,一个位于列出所有事件的页面上(在该页面中,我不需要显示 event_comments 字段)。
另一个页面加载特定事件的所有详细信息,我需要在该页面上显示 event_comments 字段。
我应该为该事件创建一个带有 event_id 和 event_comments 的额外表吗?或者我应该在当前表中添加该字段吗?
换句话说,我要问的是,如果我的表中有一个文本字段,但我没有SELECT
,它会影响对我的表的查询性能吗?
sql-server - SQL Server 非聚集索引永远不会出现在执行计划中
我有一个tbl_event
使用非聚集索引调用的数据库表IDX_Event_Folder
,IDX_Event_Time
定义为:
我运行了以下简单查询,并直接在下面显示了执行计划:
查询一:
查询 2:
我的问题是,为什么nobjectid上的索引从未使用过?当在这些 select 语句的 where 子句中指定 nobjectid 时,我希望会有索引查找或扫描。我对这个分析的理解不正确吗?
sql - 在 MySQL 中获取满足给定条件的 x 随机行的优化方法
我需要从满足某些给定条件的数据库表中获取 x 行。我知道我们可以使用 ORDER BY RAND () 从 MySQL 中获取随机行。
我正在寻找最优化的方法来做同样的事情{系统资源的低使用率是主要优先级。下一个重要的优先级是查询的速度}。另外,在表格设计中,我应该制作 'cat' INDEX 吗?
mysql - 我应该在这些列上创建索引吗?
我的数据库中有一些列,主要是 varchar 255s。它们只被访问一次,但每个页面加载/请求登录用户加载一次。(大多数情况下,它们包含用户偏好等内容)。
我的问题是,我是否应该在这些列上创建索引?我已经在多个查询中使用的其他列上获得了索引,而不是只读取一次并像这些列一样存储。
sql-server - sql性能问题
我在 SQL Server 2000 中有一个包含 24M 条记录的数据库。
当我运行这个查询
甚至这个
它运行速度非常快,并在 10 秒内返回 3500 条记录,请注意starttime
在char(30)
数据库中
但是当我运行这个查询时,它只会在 10~60 秒内返回 32 条记录
:: @MinDate 值为 2011-05-15 00:00:00.000
请注意,starttime
在我的数据库中编制了索引
我想知道我的问题是什么?
performance - ms-access 查询性能
我在数据表视图中显示了一个子表单,该子表单具有这样的记录源:
myFunction()
调用 MySQL 存储过程的 vba 函数在哪里。
问题是myFunction()
被调用太频繁了。例如,只要在同一记录中将焦点从一列移到另一列,即使该记录保持不变,它也会被调用。有没有办法阻止这种情况发生?
sql - 将两个查询合并为一个
我不确定我是否可以在一个查询中执行此操作,但我想这样做。
我需要这样的所有记录:
我还想排除这些属于这种情况的记录:
更新:(抱歉混淆)
- 因此,如果 field_1 等于 1、2、3 或 4 并且具有今天的日期时间戳,我需要显示记录(添加到结果中)
- 如果 field_1 等于 1、2、3 或 4,并且日期时间戳小于今天(将其从结果中删除)。
将两个结果合并到一个查询中的任何想法
注意事项(如果这有所不同):
- field_a 可以有一个值 az,1-99(只有两个字符)