[解決済み] PostgreSQL でゼロによる除算を回避する
2022-11-05 10:09:07
質問
SELECT句で除算を行いたい。いくつかのテーブルを結合して集約関数を使用すると、NULL値や0値を分割値として使用することがよくあります。今のところ、ゼロやヌル値による除算を避けるために、この方法しか思いつきません。
(CASE(COALESCE(COUNT(column_name),1)) WHEN 0 THEN 1
ELSE (COALESCE(COUNT(column_name),1)) END)
もっといい方法はないのかなぁ?
どのように解決するのですか?
では
count()
は決して
NULL
(他の集約関数と異なり)このような場合は
0
の場合だけを捕まえればよいのです (これはいずれにせよ唯一の問題ケースです)。ですから、あなたのクエリは単純化されます。
CASE count(column_name)
WHEN 0 THEN 1
ELSE count(column_name)
END
あるいは、もっとシンプルに
NULLIF()
,
Yuriyが提供したように
.
注意すべきは
count
を除いて、これらの関数は
を除いて、これらの関数は行が選択されていない場合、null値を返すことに注意してください。
関連
-
[解決済み] PostgreSQLの場合。PostgreSQLのテーブルを表示する
-
[解決済み] SQL Server の DateTime データ型から日付だけを返す方法
-
[解決済み] PostgreSQLの "DESCRIBE TABLE"
-
[解決済み] PostgreSQL コマンドラインユーティリティ: psql を終了する方法
-
[解決済み] SQLのSELECTでIF...THENを実行するにはどうすればよいですか?
-
[解決済み] PostgreSQLのユーザーパスワードを変更する方法を教えてください。
-
[解決済み] どのバージョンのPostgreSQLを使用していますか?
-
[解決済み] PostgreSQLからのPL/pgSQL出力をCSVファイルに保存する
-
[解決済み] PostgreSQLでデータベースのコピーを作成する
-
[解決済み】Mac OS XでPostgreSQLサーバーを起動するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
plsql-stored-procedure ORA-06550 エラー処理
-
org.postgresql.util.PSQLException: ERROR: リレーション "userinfo" の列 "loginid" が存在しません。
-
[解決済み] データベースのインデックス作成はどのように行われるのですか?[クローズド]
-
[解決済み] MongoDBに "like "を使ってクエリを実行する方法
-
[解決済み] SQLの複数列の順序付け
-
[解決済み] カラム名の変更 SQL Server 2008
-
[解決済み] postgres: ユーザーをスーパーユーザーにアップグレードしますか?
-
[解決済み] SQL Serverで結果をページ分割する最も良い方法は何ですか?
-
[解決済み] 文字列の一部をUPDATEおよびREPLACEする。
-
[解決済み] 既存のカラムにIDを追加する