データのゼロを省略するにはどうすればよいですか?
たとえば、MIN関数を使用しますか?0以外の最小値をお願いします。
どうすれば次に大きいものを手に入れることができますか?
MIN(availables.price)
また、AVG関数を使用している場合、同じ方法で0をスキップする一般的な方法はありますか?問題は、私が継承したテーブルがNULL値を使用していないが、すべての財務データに対して0.00を持っていることです。
ありがとう、
データのゼロを省略するにはどうすればよいですか?
たとえば、MIN関数を使用しますか?0以外の最小値をお願いします。
どうすれば次に大きいものを手に入れることができますか?
MIN(availables.price)
また、AVG関数を使用している場合、同じ方法で0をスキップする一般的な方法はありますか?問題は、私が継承したテーブルがNULL値を使用していないが、すべての財務データに対して0.00を持っていることです。
ありがとう、
試す:
SELECT
MIN(x)
FROM ....
where x<>0
AVGでも動作します:
SELECT
avg(x)
FROM ....
where x<>0
レールにルビーを使用していますか?これはruby-on-railsとしてタグ付けされているので、私はあなたがそうだと思いました。その場合、あなたは簡単に行うことができます
Available.minimum(:price, :conditions => "price > 0")
また
Available.average(:price, :conditions => "price > 0")
それが役立つことを願っています=)
SELECT MIN(CASE price WHEN 0 THEN NULL ELSE price END)
FROM availables
where
句を使用してクエリからゼロを除外するだけです。
select min(price)
from price_table
where price > 0;
select avg(price)
from price_table
where price > 0;
SELECT MIN(availables.price) FROM availables WHERE availables.price <> 0.0
0未満のものを除外する場合は、>を使用することもできます。floatまたはsmallfloatデータ型を使用している場合は、浮動小数点の丸めの問題に注意してください。
NULLがある場合は、where句の列をISNULL(availables.price、0.0)でラップして、それらを除外することもできます。
SELECT MIN(price)
FROM availables
WHERE price <> 0
多分それは仕事をすることができます
SELECT MIN(availables.price)
FROM availables
WHERE 0 < availables.price