In VB.Net I have below LINQ Query
Dim temp = (From r In datatable Select r Order By r.str Descending)
str
str column
distinct
str
Dim temp = (From r In datatable Select r Order By r.str Descending).distinct(r.str)
col1 col2 str
A B X
A1 B1 Y
A2 B2 X
col1 col2 str
A B X
A1 B1 Y
If you want to select only first row from rows with same str
field value:
from r in datatable.AsEnumerable()
group r by r.Field<string>("str") into g
orderby g.Key descending
select g.First()
Or method syntax
datatable.AsEnumerable()
.GroupBy(r => r.Field<string>("str"))
.OrderByDescending(g => g.Key)
.Select(g => g.First())