query-optimization相关内容

Postgres在大型字符串行上选择iLike%TEXT%速度较慢

我有一个只有7列的表,其中一列存储了每行的长文本数据。该文本列数据的平均字符长度约为1500个字符。此表有500.000行。 当我使用SELECT查询并且没有使用Text列时,没有问题,查询需要10秒。 但是,如果我像Select * from table_1那样将此长文本列添加到我的查询中,则需要3到4分钟来完成此查询并使用DataAdapter填充DataTable。 为什么 ..

Postgres中的查询速度较慢,同时连接具有10M行的所有连接列索引的表

我有三个表,分别是10M、120M和7M(域名、公司和技术)。我离开了加入COMPANY和TECHING表,域名在id列。ID列在所有三个表上都是btree索引的。我根据过滤(代理键列)从中选择1,000行,该列也是btree索引的。 select d.domain_id,m.id,c.*,t.* from prospects_v6.domain_info d left j ..
发布时间:2022-03-08 13:45:30 其他开发

DBMS优化器-最佳执行计划,无论查询形式如何

如果在关系DBMS中编写查询Q,优化器不会选择执行它的最佳方式(取决于多个因素)吗?不管您如何表示Q,优化器都不会选择最好的方式来执行它吗?我对SQL Server和Oracle很好奇。 例如,设Q为: SELECT * FROM t1, t2 WHERE t1.some_column = t2.some_column 如果存在正确的索引(具有正确的选择性),我们应该会看到索引查 ..
发布时间:2022-03-08 13:42:50 数据库

MySQL查询性能与优化

我有以下数据库结构: CREATE TABLE `posts` ( `id` int(11) NOT NULL AUTO_INCREMENT, `title` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 CREATE TABLE `tags` ( `id` int(11 ..
发布时间:2022-03-08 13:39:04 数据库

与PostgreSQL CTE的一般并行性

我正在处理一些大型数据,在我的查询中获得并行计划是必要的。我也非常喜欢使用CTE来表达我的查询,但是按照PostgreSQL的文档,我不太确定CTE是否会对并行性造成严重的限制。 Here,CTE和临时表标记为‘并行受限’,其中‘并行受限’定义为 并行受限操作是指不能在并行工作进程中执行,但可以在使用并行查询时在领导进程中执行的操作。 Here,关于考虑CTE的并行限制的描述略有 ..

MySQL查询-按月获取合计

http://sqlfiddle.com/#!2/6a6b1 方案如上所示。我想做的就是得到销售总额/月的结果……用户将输入开始日期和结束日期,我可以(在PHP中)生成这些日期的所有月份和年份。例如,如果我想知道12个月的“销售”总数,我知道我可以运行12个具有开始和结束日期的查询,但是我只想运行一个结果如下的查询: Month numofsale January - 2 ..
发布时间:2022-03-08 13:27:55 数据库

简化MongoDB聚合

我正在使用这种聚合按深度嵌套字段ObjectID对所有产品进行排序。 首先我填充CatalogProduct字段。 然后填充CatalogProduct内的类别。 按类别ID对所有数据排序(如果ID arr包含类别._id,则返回product) 按相反顺序排序,返回分页并按8限制分页。 然后获取没有分页和限制的所有已排序产品的总计数。 const sorted ..
发布时间:2022-03-08 13:25:19 前端开发

如何从MySQL表中取出重复记录中的最新数据

我正在尝试从我的SQL表中检索每条记录的最新数据。具有某些数据更改的每条记录都会有重复的数据。我需要检索最新的时间戳数据。有没有人能建议一下,就性能而言,哪种解决方案是最优的?我看到了一些使用内部联接和子查询的解决方案。 下面给出的示例数据 Technology Students Amount Area Date python 500 1000 Bang ..

MySQL复杂子查询公式

我有两张桌子 - books 和 images.books 具有 id、name、releasedate、purchasecount 等列.images 有 bookid (和books里面的id一样,基本上一本书可以有多张图片.虽然我没有设置任何外文key constraint),bucketid,poster(每条记录指向某个bucket中的一个图片文件,对应某个bookid). 表架构 ..

查询中的查询:有更好的方法吗?

随着我构建更大、更高级的 Web 应用程序,我发现自己正在编写极其冗长和复杂的查询.我经常在查询中编写查询,因为我觉得从 PHP 调用一次数据库比调用多次并关联数据要好. 但是,任何了解 SQL 的人都知道 JOIN.就个人而言,我之前使用过一两个 JOIN,但是当我发现使用子查询时很快就停止了,因为我觉得编写和维护它更容易、更快捷. 通常,我会执行可能包含来自相关表的一个或多个子查询 ..
发布时间:2022-01-23 16:34:35 其他开发

优化查询 - 从同一个子查询中选择 COUNT 和 SUM

我试图在 Stackoverflow 上找到解决方案,也许我的措辞有误. 我有一个查询需要很长时间才能执行.我相信有一些简单的方法可以改进它.例如,我两次使用相同的子查询来显示两个不同的列(sum 和 count),但在尝试自己解决时遇到了几个错误. 选择 u.ID,u.user_email 作为邮件,u.user_login AS 用户名,u.user_registered AS sig ..
发布时间:2022-01-23 16:23:59 数据库

带有子查询的 MySQL 优化查询

今天我收到了来自我的托管帐户的电子邮件,说我需要调整我的查询: 选择`id`,`nick`,`msg`,`uid`,`show_pic`,`time`,`ip`,`time_updated`,(选择计数(c.msg_id)FROM `the_ans` c其中 c.msg_id = d.id) AS 计数器,(选择 c.msgFROM `the_ans` c哪里 c.msg_id=d.idORDE ..
发布时间:2022-01-23 16:14:41 数据库

EXISTS 与 IN 的子查询 - MySQL

以下两个查询是子查询.两者都是一样的,对我来说都很好.但问题是方法 1 查询需要大约 10 秒才能执行,而方法 2 查询需要不到 1 秒. 我能够将方法 1 查询转换为方法 2,但我不明白查询中发生了什么.我一直试图自己弄清楚.我真的很想了解以下两个查询之间的区别以及性能提升是如何发生的?其背后的逻辑是什么? 我不熟悉这些先进技术.我希望有人会在这里帮助我.鉴于我阅读了 docs 这并 ..
发布时间:2022-01-23 15:36:14 数据库

在 SQL 中按子字符串查找字符串的最快方法?

我有两列的大表:ID 和标题.Id 是 bigint,我可以自由选择 Title 列的类型:varchar、char、text 等等.列标题包含随机文本字符串,如“abcdefg"、“q"、“allyourbasebelongtous",最多 255 个字符. 我的任务是通过给定的子字符串获取字符串.子字符串也有随机长度,可以是字符串的开头、中间或结尾.最明显的执行方式: SELECT * ..

如何找出是什么锁定了我的表?

我有一个 SQL 表突然无法返回数据,除非我在末尾包含 with (nolock),这表明我的表上留下了某种锁. 我已经对 sys.dm_tran_locks 来识别表上实际上有许多锁,但是我如何识别什么 正在锁定它们(即 sys.dm_tran_locks)? 编辑:我知道 sp_lock 用于 SQL 2005 之前的版本,但现在该 sp 已被弃用,AFAIK 正确的方法是使用 s ..

优化查询以获取整行,其中一个字段是组的最大值

我有一个表,其架构类似于,例如, EventTime DATETIME(6),事件类型 VARCHAR(20),Number1 整数,Number2 整数,Number3 整数,... 在这个表中有难以想象的大量行,但为了这个查询,我只感兴趣,比如说,在 EventTime.EventTime 上有一个索引,如果我只是做类似的事情 SELECT * FROM table WHERE Even ..