Python スクリプトを使用して sqlite データベース テーブルをクエリしています。
SELECT servername,
date('now','localtime'),
sum(CASE WHEN locked="NO" THEN 1 END),
sum(CASE WHEN locked="YES" THEN 1 END)
FROM nodes
WHERE servername="SOME_SERVER"
正常に動作します(サーバー名、今日の日付、ロック解除されたノードの数、ロックされたノードの数が表示されます)...
...クエリに一致するものがない場合を除きます(つまり、提供された名前のサーバー名がありません)。その場合、クエリ結果は
null,"2013-04-15",null,null
(わかりやすくするためにヌルを追加しました)
一部のサーバーがノードを持たないことは有効です。クエリから「ケース」を削除すると、クエリ結果が得られないため、結果が必要ないときに結果が得られます。
Pythonで検出したり、事前にカウントをクエリしたりせずに、SQLクエリで何も返さないようにするにはどうすればよいですか?