我正在尝试从我的数据库中获取MIN / MAX / AVG,但可能会不时出现一些虚假的结果。基本上,我只希望MYSQL给我一个差异计算的最小值等。
我需要的标准是单程+65.00。
以下是一些示例数据
Actual
1854
1843
1865
1822
1833
1859
1400
这是我的查询 -
Select MIN(ACTUAL - 1800), MAX(ACTUAL - 1800), AVG(ACTUAL - 1800) FROM ACTUAL_TABLE WHERE DATE = '2015-08-09'
此查询结果为 -
MIN MAX AVG
-400 65 -17.71428571
很明显,查询在实际表格中获得1400,差异为-400,我需要它忽略此结果,因为它超过了> -65.00我需要的标准。
如果标准到位,结果将如下所示 -
MIN MAX AVG
22 65 -17.71428571
我已经尝试在SQL中放入一个CASE并且没有任何乐趣。任何人都可以对这个问题有所了解吗?
三江源。
答案 0 :(得分:1)
仅选择您想要的值
Select MIN(ACTUAL - 1800), MAX(ACTUAL - 1800), AVG(ACTUAL - 1800)
FROM ACTUAL_TABLE
WHERE DATE = '2015-08-09' AND ACTUAL >= (1800-65) AND ACTUAL <= (1800+65);