[解決済み】警告。Aqua Data Studioの集約や他のSET操作でNull値が排除される。
2022-02-22 23:51:41
質問事項
データがNULLの場合、結果表示時に警告が表示される問題があります。 どうしたらいいですか。テーブルにデータがない場合、NULLデータを0に変更するにはどうしたらいいですか?
これは私のコードです:-)
SELECT DISTINCT c.username AS assigner_officer,
d.description AS ticketcategory,
(SELECT Count(closed)
FROM ticket
WHERE assigned_to = c.user_id
AND closed IS NOT NULL
GROUP BY assigned_to)closedcases,
(SELECT Count(closed)
FROM ticket
WHERE assigned_to = c.user_id
AND closed IS NULL
GROUP BY assigned_to)opencases
FROM ticket a
JOIN ticketlog b
ON a.ticketid = b.ticketid
JOIN access c
ON a.assigned_to = c.user_id
JOIN ticket_category d
ON a.cat_code = d.id
JOIN lookup_department e
ON a.department_code = e.code
結果は次のようになります。
Warnings: --->
W (1): Warning: Null value is eliminated by an aggregate or other SET operation.
<---
assigner_officer ticketcategory closedcases opencases
------------------- ----------------- -------------- ------------
abdulhafiz Enquiry (null) 0
affan Enquiry 12 (null)
amirul Enquiry 1 (null)
azrul_fahmi Enquiry 45 0
Azwani Enquiry (null) 0
chai Enquiry 4 (null)
dalinawati Enquiry 1 0
Emmy Complaints (null) 0
Fadhlia Enquiry 38 0
fairulhalif Others 1 (null)
farikh Enquiry (null) 0
ismailh Enquiry 28 0
izzahanna Enquiry (null) 0
Kamsuzilawati Enquiry 1 (null)
解決方法は?
ほとんどの場合
COUNT
を使用して、UIDの上に要約します。 そのため
COUNT([uid])
を実行すると、警告が表示されます。
警告 Null 値が集約または他の SET 操作によって除去されました。
左結合で使用されている間、カウントされたオブジェクトが存在しない場合。
使用方法
COUNT(*)
この場合、存在する結果 (つまり親) の総数を数えることになるので、結果も正しく表示されません。
使用方法
COUNT([uid])
これは有効なカウント方法であり、警告は単なる警告に過ぎません。 しかし、もしあなたが心配で、このケースでuidの真のカウントを取得したいのであれば、次のようにすることができます。
SUM(CASE WHEN [uid] IS NULL THEN 0 ELSE 1 END) AS [new_count]
これなら、クエリに多くのオーバーヘッドを追加することはないでしょう。 (テスト済み mssql 2008)
関連
-
[解決済み] varchar データ型から datetime データ型に変換すると、SQL クエリで範囲外の値が発生する
-
[解決済み】2つの列を分割する方法は?
-
[解決済み】参照するテーブルにプライマリーキーやキャンディデートキーがない
-
[解決済み] 3を挿入すると「ORA-01438: この列で許容される指定精度より大きい値」と表示される。
-
[解決済み】警告。Aqua Data Studioの集約や他のSET操作でNull値が排除される。
-
[解決済み] SQL Server サブクエリが 1 つ以上の値を返しました。これは、サブクエリが =, !=, <, <= , >, >= のように続く場合は許可されません。
-
[解決済み] エラー (ORA-00923: 期待された場所に FROM キーワードが見つかりませんでした)
-
[解決済み] CLOBとNCLOBの違いは何ですか?
-
[解決済み] ORA-01821: ISO 8601 のローカルタイム付き日付のフォーマットが認識されないエラー
-
[解決済み] マルチパート識別子をバインドできなかった
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】「パラメータ@objnameがあいまいか、主張する@objtype(COLUMN)が間違っています」を解決するにはどうすればよいですか?[重複している]。
-
[解決済み】集約関数のないTSQLピボット
-
[解決済み] バックエンドバージョンでは、データベースのダイアグラムやテーブルのデザインはサポートされていません。
-
[解決済み】INTERSECTとINNER JOINは根本的に違うのか?[重複している]
-
[解決済み】SQL Serverは「集約関数やサブクエリを含む式に対して集約関数を実行できない」が、Sybaseはできる。
-
[解決済み] ORA-12801: 並列クエリサーバー P004 および ORA-01555 でシグナルされたエラー: スナップショットが古すぎる。
-
[解決済み] mongoの外部キー?
-
[解決済み] SELECT DISTINCTを指定した場合、ORDER BY項目は必ず選択リストに表示されます。
-
[解決済み] varchar 値の変換で int カラムがオーバーフローしました。
-
[解決済み] オペランド型の衝突:uniqueidentifierはintと互換性がない