c# - linq、c# 中选择然后过滤和选择不同之间的比较

标签 c# sql linq

哪个更快?

从 LINQ 获取某个变量的列表(例如字符串类型),然后在 C# 中过滤重复项,或者仅在 LINQ 中直接选择不同的值?

假设我们有

N rows if we take duplicates

and R if we filter

( N >> R ) there are many duplicates.

基本上我是在问,一般来说哪个编程更快更好

  • 在 LINQ 中选择整 N 行,将其转换为列表,然后将其过滤为 R 行

  • 或者直接从 LINQ 选择 R 行并将其转换为列表。

注意:

在 SQL 中,获取 R 行所需的时间大约是获取 N 行所需时间的 2 倍!但欢迎提供通用答案。

最佳答案

我认为当您说 Linq 时,您指的是 LinqToSQL。

连接数据库时的经验法则是仅获取您需要的内容;为此,如果您有良好的 Linq 查询策略,那么在 LinqToSQL 上进行过滤可以节省大量无用的工作。

如果您要过滤的列恰好是 FullTextIndex,那么您就中奖了。

关于c# - linq、c# 中选择然后过滤和选择不同之间的比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25032401/

相关文章:

c# - C# 中的哪个语言决定让您烦恼?

c# - 在同一 View 中显示局部 View mvc4

sql - 如果为空,则将字段转换为位 0,如果不是,则转换为位 1

SQL - 使用SSIS增量插入?

c# - 3 个数组到 1 个 IEnumerable<test>

c# - Linq 子选择

c# - 使用变量名调用接口(interface)

c# - C#中的布局管理器

mysql - 我想显示最高的号码。剧集数

c# - 需要使用 Linq 将列表转换为不同列表的帮助