C#-从SQL表中提取唯一的数据

本文关键字:唯一 数据 提取 SQL C#- | 更新日期: 2023-09-27 18:06:48

我有一个包含大量数据的数据库表。我想从中提取一个属性。这个属性通常对每个条目都是相同的。它大约有三种变体。是否可以在不遍历整个数据库的情况下将这三种变体放在一个列表中。

例如,为了效率,我不想做以下事情:

foreach (var x in table) 
{
    list.Add(x.attribute);
{

我只想要唯一的属性,而忽略所有多余的属性。我想如果我只是做了一个if(notSeen(((,它仍然会遍历表,并且不会节省太多工作。

有什么工具可以帮助完成这类过程吗?

C#-从SQL表中提取唯一的数据

假设您使用的是LINQ to SQL/Entities,请确保在DB级别上可以做到这一点。您可以这样做(LINQ to Entities使用DISTINCT/GroupBy语句转换为SQL(:table.Select(k=>k.attribute).Distinct();。如果有多个分组密钥,也可以使用以下语法:table.GroupBy(k=>new{k.ItemOne, k.ItemTwo}).Select(k=>k.First());

希望得到帮助。