テーブル名:test_table
カラム:test_data
■test_dataの値の数
select test_data, count(test_data) from test_table whrer test_data = “XXXX”;
■特定の値を指定※この場合、値がXXXXとZZZZの数をカウント
select test_data, count(test_data = “XXXX” or NULL), ount(test_data = “ZZZZ” or NULL) from test_table;
なんで、or NULLが必要か?
count(test_data = “XXXX” or NULL)
カウントはTRUEまたはNULLで判断される
上記の場合、test_data = “XXXX”の場合はTRUE
test_data <> “XXXX”の場合はFALSEと判定され、すべてNULL以外と判定され
正常な結果が得られない。
明示的に、対象の値以外はNULLとすることにより、意図した結果が得られる。
コメント