首页 新闻 会员 周边

怎么用EF查询某字段中 总共有几种类别??

0
悬赏园豆:20 [已解决问题] 解决于 2014-07-26 13:05

问题是这样的:数据库中的员工表,一个员工属于一个部门  但部门是不定的 ,所以在数据中没有主外键只在对应公司填了部门名称,现在要根据所有员工部门中所填的字符串,查出共有几种类别  换句话说就是要 查询出这个公司共有几个部门 用EF怎么查?

404 NotFound!的主页 404 NotFound! | 初学一级 | 园豆:184
提问于:2014-07-24 17:52
< >
分享
最佳答案
0

.Distinct()就可以过滤重复呀。

收获园豆:20
Alex_QY1987 | 小虾三级 |园豆:1888 | 2014-07-24 17:58

我的想法是,能不能将所有字段中的值提取出来 再用Distinct()查重,但是这样的话用了两步,不知道还有没有更好的解决办法?

404 NotFound! | 园豆:184 (初学一级) | 2014-07-24 19:17

@404 NotFound!: (from a select new {字段1,字段2,字段3}).Distinct().AsEnumerable().ToList();

这样试了吗?

EF是延迟执行的,如果你不ToList()。SQL语句是不会被执行的。

Alex_QY1987 | 园豆:1888 (小虾三级) | 2014-07-25 09:03

@Alex_QY1987: 受你的启发,我改了下,查出来了 

int departmentnumber = temp[0].staffs.Where(d=>d.staff_IsDel==false).Select(d => d.staff_Department).Distinct().Count();

404 NotFound! | 园豆:184 (初学一级) | 2014-07-25 13:50

@404 NotFound!: 你是只要个数量呢。这样就可以啦。

Alex_QY1987 | 园豆:1888 (小虾三级) | 2014-07-25 14:02
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册