获取最接近整数的平均值
Get average to closest whole number
我有两张桌子
视频
身份证,
视频名称,
视频网址
评分
身份证,
视频编号,
评论描述,
评级(小数类型)
多个用户可以多次提交对 1 个视频的评分。每个人的评分都存储在评分列中,并且可以提交包括一半的评分,即 1.5、2.5
在我的网页上,我有一个下拉菜单,用户可以在其中 select 平均评分(值为 1-5),并将显示具有该平均评分的所有视频。
我可以使用 Linq 获得平均值 SQL 使用类似
的东西
return myDataCtx.Ratings.Average(i => i.Rating));
但是,如果用户 select 从下拉列表中选择一个介于 1-5 之间的整数,我如何才能将评级列四舍五入到最接近的整数?
你可以这样得到最近的号码。
decimal d = 1.75M;
var ceiling = Math.Ceiling(d);
var floor = Math.Floor(d);
var closest = ceiling - d < d - floor ? ceiling : floor;
x.5
应该要单独处理。
您也可以使用Math.Round()
我有两张桌子
视频
身份证, 视频名称, 视频网址
评分
身份证, 视频编号, 评论描述, 评级(小数类型)
多个用户可以多次提交对 1 个视频的评分。每个人的评分都存储在评分列中,并且可以提交包括一半的评分,即 1.5、2.5
在我的网页上,我有一个下拉菜单,用户可以在其中 select 平均评分(值为 1-5),并将显示具有该平均评分的所有视频。
我可以使用 Linq 获得平均值 SQL 使用类似
的东西return myDataCtx.Ratings.Average(i => i.Rating));
但是,如果用户 select 从下拉列表中选择一个介于 1-5 之间的整数,我如何才能将评级列四舍五入到最接近的整数?
你可以这样得到最近的号码。
decimal d = 1.75M;
var ceiling = Math.Ceiling(d);
var floor = Math.Floor(d);
var closest = ceiling - d < d - floor ? ceiling : floor;
x.5
应该要单独处理。
您也可以使用Math.Round()