8134: Divide by zero error encountered(ゼロ除算エラー)
SQL Server意味
算術式の除数がゼロのため、ゼロ除算エラーが発生した。SQL Server は除算を完了できず、クエリを停止する。
原因
除数として使われる列または式が 0 と評価される、平均/比率計算での分母がゼロ、NULLIF なしの除算、データ内の想定外のゼロ値。
対処方法
分母を NULLIF で保護する (例: value / NULLIF(denominator, 0))。結果は NULL となり、ISNULL/COALESCE でデフォルト値を指定できる。CASE WHEN denominator = 0 THEN NULL ELSE value/denominator END を使う。除算前に WHERE でゼロ値を除外する。必要なら SET ARITHABORT/ANSI_WARNINGS の動作を評価する。
同じデータベースの他の項目
- 701There is insufficient system memory in resource pool to run this query(リソースプールのシステムメモリ不足)
- 845Time-out occurred while waiting for buffer latch(バッファラッチ待機中のタイムアウト)
- 3201Cannot open backup device. Operating system error (backup device error)(バックアップデバイスを開けない)
- 245Conversion failed when converting the value to data type(データ型への値の変換に失敗)
- 515Cannot insert the value NULL into column(列に NULL 値を挿入できない)
- 8115Arithmetic overflow error converting expression to data type(式のデータ型への変換で算術オーバーフロー)
- 512Subquery returned more than 1 value(副クエリが複数の値を返した)