使用 WHERE 和 COUNT 在 sql 查询中返回错误值
Wrong value returned in sql query using WHERE and COUNT
我有一个名为 category_id
的列,值可以是数字或空值(每行 123 或空值)。我必须 select 具有空值的类别 ID 的总数 (COUNT) 使用:
SELECT COUNT(category_id)
FROM products
WHERE category_id = NULL;
返回 0(错误值)。
试试这个:
SELECT COUNT(category_id) FROM products WHERE category_id IS NULL;
NULL 值无法通过“=”运算符进行比较,因此请使用 'IS' 关键字而不是“=”
在 where 子句中使用 category_id IS NULL
而不是 category_id= NULL
COUNT是一个聚合函数的例子,你需要使用GROUP BY
试试这个:
SELECT COUNT(category_id) AS n FROM products WHERE category_id IS NULL GROUP BY category_id
只需像这样将 IS NULL
与 category_id
一起使用
SELECT COUNT(category_id)
FROM products
WHERE category_id IS NULL;
Count(category_id) 只会计算 category_id 不为空的记录。
要与 NULL 进行比较,SQL 语法是 "IS NULL",而不是“= NULL”。
计算总使用量:
SELECT COUNT(1) FROM products WHERE category_id IS NULL ;
我有一个名为 category_id
的列,值可以是数字或空值(每行 123 或空值)。我必须 select 具有空值的类别 ID 的总数 (COUNT) 使用:
SELECT COUNT(category_id)
FROM products
WHERE category_id = NULL;
返回 0(错误值)。
试试这个:
SELECT COUNT(category_id) FROM products WHERE category_id IS NULL;
NULL 值无法通过“=”运算符进行比较,因此请使用 'IS' 关键字而不是“=”
在 where 子句中使用 category_id IS NULL
而不是 category_id= NULL
COUNT是一个聚合函数的例子,你需要使用GROUP BY 试试这个:
SELECT COUNT(category_id) AS n FROM products WHERE category_id IS NULL GROUP BY category_id
只需像这样将 IS NULL
与 category_id
一起使用
SELECT COUNT(category_id)
FROM products
WHERE category_id IS NULL;
Count(category_id) 只会计算 category_id 不为空的记录。 要与 NULL 进行比较,SQL 语法是 "IS NULL",而不是“= NULL”。
计算总使用量:
SELECT COUNT(1) FROM products WHERE category_id IS NULL ;