使用LINQ vs SQL过滤集合

Rob*_*uer 5 c# linq asp.net

关于使用LINQ vs SQL过滤集合,我有一个非常笼统的问题.假设您在数据库表上运行了一个相当复杂的过滤器.它正在运行,比如10,000次,过滤器每次都可能不同.性能方面,您最好将整个数据库表集合加载到内存中并使用LINQ执行过滤器,还是应该让数据库使用SQL处理过滤(因为这是构建的内容).有什么想法吗?

编辑:我应该更清楚.让我们假设我们正在谈论一个包含1000条记录和20列的表(包含int/string/date数据).目前在我的应用程序中,我每半小时运行一次查询,将所有数据导入集合(将该集合保存在应用程序缓存中),并在整个应用程序中过滤该缓存集合.我想知道这是否比进行数据库服务器(它是Oracle fwiw)的大量往返更糟糕.

Hen*_*man 2

更新后:

它正在运行,比如说 10,000 次

我假设一个表有 1000 条记录

假设 1k 条记录可以轻松装入内存似乎是合理的。

然后运行 ​​10k 过滤器将在内存中便宜得多(LINQ)。
使用 SQL 意味着加载 10M 记录,大量 I/O。