2017-11-29 11 views
2

このクエリの結果はどうなりますか? (のOracle SQL)null値は平均値を変更しますか?

SELECT TO_CHAR(AVG(TEST_SCORE),'999,999.99') FROM SCORES; 

TEST_SCOREの値が(96、84、NULL)

が90.00ではないですか? nullは答えを変更しないので?

NULL値は平均値を変更しません

答えて

3

ありがとうございます。 2つの数値の平均は90です。一般に、集計関数は、min(),max()avg()count()count(*)を除く)、およびsum()を含むNULLの値を無視します。

Hereは、何が起こるかを少し再考したものです。

3

試してみる

with SCORES as (
    select 96 test_score from dual 
    union all 
    select 84 from dual 
    union all 
    select null from dual 
) 
SELECT TO_CHAR(AVG(TEST_SCORE),'999,999.99') FROM SCORES; 
関連する問題