c# - EntityFramework Group by not included in SQL statement -


i'm trying create query similar this:

select randomid  myview ... group randomid 

note: ef doesn't support distinct thinking of going around lack of group by (or think)

randomid numeric

entity framework v.6.0.2

this gives me expected result in < 1 second query

when trying same ef have been having issues.

if linq similar this:

context.myview .where(...) .groupby(mt => mt.randomid) .select({ id = group.key, count = group.count() } ) 

i sort of same result forcing count , making query > 6 seconds

the sql ef generates this:

select  1 [c1], [groupby1].[k1] [randomid], [groupby1].[a1] [c2] (  select       [extent1].[randomid] [k1],      count(1) [a1]      [dbo].[myview] [extent1]      (...)      group [extent1].[randomid] )  [groupby1] 

but, if query had count commented out < 1 second

if change select like:

.select({ id = group.key} ) 

i of rows without group by statement in sql query , no distinct whatsoever:

select  [extent1].[anotherfield] [anotherfield], -- 'this field got included automatically on query , dont know why, doesnt affect outcome when removed in sql server' [extent1].[randomid] [randomid] [dbo].[myview] [extent1] (...) 

other failed attempts:

query.groupby(x => x.randomid).select(group => group.firstordefault()); 

the query generated follows:

select      [limit1].all fields,...      (select          [extent1].[randomid] [randomid]         [dbo].[myview] [extent1]         (...) [project1]     outer apply  (select top (1)          [extent2].all fields,...         [dbo].[myview] [extent2]         (...) [limit1] -- same above 

this query performed rather poorly , still managed return ids clause.

does have idea on how force usage of group by without aggregating function count?

in sql works again have distinct keyword well...

cheers, j

var query = p in tablename          select new {id = p.columnnameid}; var distinctitems = query.distinct().tolist(); 

here linq query should able write equivalent ef dbset too. if have issues let me know.

cheers!


Comments

Popular posts from this blog

How to access named pipes using JavaScript in Firefox add-on? -

multithreading - OPAL (Open Phone Abstraction Library) Transport not terminated when reattaching thread? -

node.js - req param returns an empty array -