使用函数AVG求平均值时,如果结果为除不尽的值,会报错,Specified cast is not valid 返回
SqlSugar
处理完成
12
382
Light 发布于1个月前
悬赏:0 飞吻
版本:5.1.4.168-preview16
错误截图:
热忱回答(12)
-
fate sta VIP01个月前
Avg(sqlfunc.rand(a.num,2))
这样试试
0 回复 -
Light VIP01个月前
@fate sta:不支持这样的语法吧
0 回复 -
Light VIP01个月前
@fate sta:
0 回复 -
fate sta VIP01个月前
SqlFunc.Round
0 回复 -
Light VIP01个月前
@fate sta:第一种,报错,第二种,语法错误
0 回复 -
Light VIP01个月前0 回复
-
fate sta VIP01个月前
decimal price = db.Queryable<TempStudent>() .Select(it=>SqlFunc.Round( SqlFunc.AggregateAvg(it.num),2)).First();
这样就可以了
0 回复 -
Light VIP01个月前
@fate sta:这个我也试过了,在oracle中,结果不对,有 ROWNUM = 1和没有结果完全不同
数据库版本:Oracle 11G生成出来的SQL
SELECT AVG(NVL("PRICE",0)) FROM "BX_PIGPRICE" WHERE ((( "STATDAY" <= '2024-09-03' ) AND ( "STATDAY" > '2024-08-27' )) AND ( "AREA_ID" = '1F63DB81-54EC-4444-B38F-138E45DF6890' )) AND ROWNUM = 10 回复 -
Light VIP01个月前0 回复
-
Light VIP01个月前
除非给他包一层
0 回复 -
fate sta VIP01个月前
@Light:first改single
0 回复 -
fate sta VIP01个月前
这样就没rownum了
0 回复