首页新闻找找看学习计划

SQL转Linq to Entity,一直报错

0
悬赏园豆:5 [已解决问题] 解决于 2014-03-21 09:28

取得的效果是筛选不重复记录,以手机号码为准,重复的只取一条,

我写的SQL

select from Proxy a where ID=(select min(ID) from Proxy where [Mobile ]=a.[Mobile ]) order by Id desc
 
写的linq
var proxyClones = (from q in query
                   where q.Id == _proxyRepository.Table.Where(c => c.Mobile == q.Mobile).Min(c => c.Id)
                   select new ProxyClone()
                   {
                      Id = q.Id,
                    });

一直报连接超时的错误

问题补充:

这个是我原来写的去重,速度很慢

var proxyClones = (from q in query
                              select new ProxyClone()
                              {
                                  Id = q.Id,
                                  CreateTime = q.CreateTime,                                  
                              }).GroupBy(g => new { g.Mobile }).Select(s => s.FirstOrDefault());

胡晓凯的主页 胡晓凯 | 初学一级 | 园豆:2
提问于:2014-03-20 10:39
< >
分享
最佳答案
0

你的数据表有多少记录数?

mobile字段是否有建立索引?

为什么要Select *,你查出来几十几百万条记录有什么意义呢?

收获园豆:5
爱编程的大叔 | 高人七级 |园豆:29841 | 2014-03-20 12:35

索引没有建立,分页了,也是按需查询,我把SQL的使用内存调大了,速度上去了。

胡晓凯 | 园豆:2 (初学一级) | 2014-03-21 09:27
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册