同じクエリの複数のインスタンスを実行しています。以下のバージョンはデータを返すべきではありませんが、各列に「null」を含む1行を取得しています:
SELECT (CASE ScanName WHEN 'SYSTEM-HQ' THEN 'HQ
System' END) AS System,
sum(CASE pspplMSSeverity WHEN 1 THEN 10 WHEN 2 THEN 9 WHEN
3 THEN 6 WHEN 4 THEN 3 END) AS Score,
(sum(CASE pspplMSSeverity WHEN 1 THEN 10 WHEN 2 THEN 9
WHEN 3 THEN 6 WHEN 4 THEN 3 END)/COUNT(pspplMSSeverity)) AS
Grade
FROM missingpatches
WHERE ScanName like '%SYSTEM-HQ%'
ORDER BY LAST_UPDATE DESC LIMIT 1
このクエリを変更して、有効な値が存在する場合にのみデータを返すようにするにはどうすればよいですか?
これは、Null データが返される原因となっているプライマリ SQL ステートメント内での Case と Sum の使用によるものでしょうか?