Linq to Entities:复杂查询获得“平均”餐厅评级

时间:2011-07-14 18:45:31

标签: linq entity-framework entity linq-expressions

所以我正在为我的社区建立一个餐厅评论网站。我需要 从下表中提取数据:RESTAURANT,CUISINE,CITY, 价格和评级(客户评级)。

查询应返回所选CUISINE_ID和的所有restuarants 返回RESTAURANT_NAME,CUSINE_NAME,CUTY_NAME,PRICE_CODE和它 应平均所有评论RATING_CODE并返回计算结果 值。除了平均值之外,我很好地返回所有数据 评价

我只使用LINQ to Entities 2天和LINQ for about 3个星期,所以我真的是个新手;我正在等待我的LINQ书 从Amazon.com发送。感谢您的帮助指南!

2 个答案:

答案 0 :(得分:1)

最终应该看起来像这样:

var avgForMatches = 
    (from r in context.Restaurants
     where r.Cuisines.Any(c => c.CuisineName == cuisineName)
     where r.Prices.Any(p => p.PriceCode == priceCode)
     //... same pattern for other searches.
     select r.RatingCode)
    .Average();

答案 1 :(得分:0)

了解101 linq样本中的聚合方法(包括平均值) - http://msdn.microsoft.com/en-us/vcsharp/aa336747