query-performance 相关问题

有关测量或改进查询(处理速度)的问题。

跳过“N”行并获取所有可用的

我有一个简单的要求,我想跳过“N”行并获取所有可用的。我需要它作为我的存储过程的一部分,例如 WHERE /*某些条件*/ 订购依据 /* 某些情况

回答 3 投票 0

pgstattuple 查询性能

我正在尝试使用 pgstattuple 扩展构建查询来检查所有用户表中的死元组、活元组百分比、可用空间等。所以,我想出了这个查询: 选择模式名称, 关系...

回答 1 投票 0

如何在1个sql查询中从4个表中获取数据?

我有以下数据库架构: 表课程: ID 导师id 标题 表 course_categories: ID 类别_id 课程ID 表类别: ID 姓名 表导师: ID 不...

回答 3 投票 0

在InnerJoin中重用mysql子查询

我正在尝试优化查询,试图避免重复用“COMPLEX QUERY”指示的查询,该查询使用了两次,并且两次都有相同的结果。 原始查询 选择新闻。* 来自 n...

回答 3 投票 0

如何强制oracle不使用索引

我有一个要求,我必须强制sql不使用表上存在的特定索引。 例如, 创建表 t1(id varhcar2(10),data1 varchar2(3000)); 创建表 t2(id

回答 4 投票 0

IN 和 NOT IN 运算符之间有性能差异吗?

oracle数据库中IN和NOT IN运算符在查询性能上有什么重大差异吗?

回答 1 投票 0

在c#中使用WhereIf进行多个条件

嗨,有人可以帮助我如何在 LINQ 中最好地使用 whereif,这里我有一个工作正常的代码,但我想用WhereIf 转换这个查询。 公共异步任务 LoadQuery(IEnumerable 嗨,有人可以帮助我如何最好地在 LINQ 中使用 whereif,这里我有一个可以正常工作的代码,但我想用WhereIf 转换此查询。 public async Task LoadQuery(IEnumerable<string> codes) { var query = _dBContext.QueryTable.Where(x => !x.InActive).AsQueryable(); if (codes!= null && codes.Any()) query = query.Where(x => codes.Contains(x.FirstCode) || query.Contains(x.SecondCode)); else query = query.Where(x => !x.HasException.HasValue); var data = query.ToList(); } 我已经尝试使用WhereIF enumerable 但没有成功。这是我关注的链接。 https://extensionmethod.net/csharp/ienumerable-t/whereif WhereIf 不太适合您的情况,原因有两个: 您在 if-else 上调用两个不同的函数,而 WhereIf 的构建是为了接受在满足某些 predicate 时执行的单个函数 (condition)。 WhereIf 是 IEnumerable<TSource> 的扩展方法,而您尝试将其用作 IQueryable<TSource> 的扩展方法。 如果你坚持的话,你必须为 IQueryable<TSource> 定义一个扩展方法,这样做时,只需将其定义为 WhereIfElse: public static class ExtensionMethods { public static IQueryable<TSource> WhereIfElse<TSource>(this IQueryable<TSource> source, bool condition, Func<TSource, bool> predicateIf, Func<TSource, bool> predicateElse) { if (condition) return source.Where(predicateIf).AsQueryable(); else return source.Where(predicateElse).AsQueryable(); } } 所以,假设 query 的类型是 IQueryable<Item>(将 Item 替换为您的实际类型): public async Task<List<Item>> LoadQuery(IEnumerable<string> codes) { var query = _dBContext.QueryTable.Where(x => !x.InActive).AsQueryable(); query = query.WhereIfElse( // condition codes != null && codes.Any(), // predicateIf (Item x) => codes.Contains(x.FirstCode) || codes.Contains(x.SecondCode), // predicateElse (Item x) => !x.HasException.HasValue ); var data = query.ToList(); return data; } 附注请注意,我更改了您的返回值,尽管仍然没有 await。 bool condition = codes!= null && codes.Any(); var data = _dBContext.QueryTable .WhereIf(condition, a=> codes.Contains(a.FirstCode) || codes.Contains(a.SecondCode)) .WhereIf(!condition, a=> !a.HasException.HasValue && !a.InActive).ToList(); 为 WhereIf 添加扩展方法,这里我们通过传递条件作为第一个参数和谓词作为第二个参数,为类型 Where 和 IEnumerable 扩展了 IQueryable。 public static class LINQExtension { public static IEnumerable<TSource> WhereIf<TSource>(this IEnumerable<TSource> source, bool condition, Func<TSource, bool> predicate) { if (condition) return source.Where(predicate); else return source; } public static IQueryable<TSource> WhereIf<TSource>(this IQueryable<TSource> source, bool condition, Expression<Func<TSource, bool>> predicate) { if (condition) return source.Where(predicate); else return source; } } 干杯:) bool condition = codes!= null && codes.Any(); var data = _dBContext.QueryTable .WhereIf(condition, a=> codes.Contains(a.FirstCode) || codes.Contains(a.SecondCode)) .WhereIf(!condition, a=> !a.HasException.HasValue && !a.InActive).ToList();

回答 3 投票 0

MYSQL。如果我使用变量,LIKE 查询就会变得太长

我有一张500万字的大桌子。我需要找到以动态字符串开头的单词。但是当我将 LIKE 运算符与字符串变量一起使用时,查询变得太长。 例如,这个查询...

回答 3 投票 0

Django:prefetch_lated 没有效果

我正在尝试使用 prefetch_lated 优化数据库查询,但没有成功。 模型.py 类订单(模型.模型): # 一些字段... @财产 def last_operation(self) -> 可选['

回答 3 投票 0

将查询提示(OPTION)放入SQL Server中的视图中

我在视图上有一个使用多个联接的 SQL 查询,该查询偶尔运行得非常慢 - 比正常情况慢很多,使得查询几乎无法使用。 我将查询复制到视图之外,然后

回答 1 投票 0

提高 SQL Server 中大表的 SELECT 查询性能

问:如何提高查询性能? 细节: 我有一张包含 200k 记录(销售)的表和一个函数 getView_sls(@TON_orNPS) 以下查询需要 10-12 秒 从 Sa 选择 *...

回答 2 投票 0

在 nvarchar(max) 列上创建索引

我的表格包含三列。如果我在 select 语句中选择 NVARCHAR(MAX) 列,我会发现性能很差。是否可以在 NVARCHAR(MAX) 列上创建索引? 创建表测试 (...

回答 2 投票 0

SQL CTE性能是否取决于声明顺序?

让我们想象一下两个代码稿。图1:WITH cte1 AS ( SELECT a1, a2 FROM A WHERE a_condition ), cte2 AS ( SELECT b1, b2 FROM B WHERE b_condition ) SELECT a1, a2, b1, b2 ...。

回答 1 投票 -2

带WHERE子句的Sql视图运行速度比原始查询慢。

这将在一个恒定的时间内运行。SELECT row_number() OVER (order by PackagingUniqueId) as RowNum, Barcode, pu.PackagingUniqueId, rd.Name, pu.ComponentBarcode, rrl.ponum, rrl.mfgpart, rrl.new_lot_code, ...

回答 1 投票 0

POSTGRES在数百万条记录中选择n条按时间平均分布的行。

我有一个表,列id,filter1,filter2,time,value,里面有几百万条记录。我想在两个时间戳之间取n条平均分布的记录。如果...之间的记录数...。

回答 1 投票 0

优化数据库中大表的查询(SQL)

我正在尝试优化一个大型事件表(1000多万行)的sql查询,用于日期范围搜索。我已经在这个表上有唯一的索引(lid,did,measurement,date)。

回答 1 投票 0

同一个表的相同查询,不同的响应时间。

我有一个开发服务器,访问数据时出现了一些问题,用户反映有时太慢了。设置情况是 * 虚拟服务器; * 4个虚拟CPU; * 8GB虚拟内存; * ...。

回答 1 投票 0

在单一表格上进行排序查询

我有一个表T,有一个PK Id,两个字段FieldA,FieldB和一个Date字段。我执行了一个请求(在SQLServer上):select top(N) * from T where (FieldA=Value1 OR FieldB=Value2) AND Date < ....

回答 2 投票 0

如何让查询速度更快

下面是我的代码。SELECT m.id, (SELECT count(r.id) FROM reports as r WHERE r.date BETWEEN NOW()-INTERVAL '7 days' AND NOW() and r.decision = 'ACCEPTED' ....

回答 1 投票 0

甲骨文-插入式查询慢

我正在做一个插入: insert *+ NOLOGGING * into myTable select *+ parallel(3) * * from myTmpTable; Here the explain plan:

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.