【发布时间】:2011-07-07 15:14:10
【问题描述】:
假设我有 INT 列,并且我使用 -1 表示在 INSERT 时没有可用的数据。我想获得该列所有 0 或更大值的 AVG。
这可能吗?
谢谢。
我忘了说我是和其他 AVG 一起做这个的,所以它是 select avg(a), avg(b), avg(d) from tab; ...所以我不能使用 b>0... 因为其他人需要使用行数据,而不管这一列的数据是 -1。
虽然我可以增加 AVG 结果,但我突然想到,例如如果通常是 (4 + 5 + -1 + -1 + 6) / 5。但是如果我知道有多少个 -1,我可以“修复”结果以排除它们。
【问题讨论】:
-
理想情况下是这样,但数据已经在数据库中了。
-
你的数据库是一成不变的吗?
-
@Nerfino:如果有人很好地回答了您的问题,请接受回复:)