私のDBには、現在フロートデータがあります。すべての列は NULLABLE に設定されており、値が欠落している場合はそこに配置しNULL
ます。
私の DB は大きすぎます。値が 0 ~ 100 の範囲にあることがわかっている場合は、小数点以下 1 桁に丸めることができます。float を使用するとオーバーヘッドが発生するため、smallint を使用することを考えています (すべての float に 10 を掛けて、丸めた数値として格納します)。では、NULL
価値観について。2 つのオプションがあります。
まだ使う
NULL
9999 などの「範囲外」の値を使用して表し
NULL
ます (また、列に何も設定されていない場合は、この値をデフォルトにします)。ただし、クエリでは、これを行う必要があります。SELECT AVG(NULLIF(data, 9999)) AS data, ....
( を使用すると、値が計算されずに を
NULL
使用できます..)AVG(data)
NULL
何を使うのが良いでしょう。それとももっと良いテクニックがありますか?