目录
注意
mysql select count返回null
下面是百度的回答
在MySQL中,当SELECT COUNT(*)
查询返回NULL
时,通常意味着查询结果为空集,即没有记录匹配查询条件。COUNT()
函数在没有匹配行的情况下返回NULL
,而不是0
。
解决方法:
-
确保查询条件正确,确保你期望的数据确实存在于表中。
-
如果需要处理
NULL
值,可以使用IFNULL()
或COALESCE()
函数来转换NULL
为0
。
返回null具体示例(根据条件没有符合的)
1.创建表
CREATE TABLE `t_test` (
`id` int(11) NOT NULL,
`name` varchar(255) COLLATE utf8mb4_bin DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_bin
2.插入数据
INSERT INTO `t_test`(`id`, `name`) VALUES (1, '张三');
INSERT INTO `t_test`(`id`, `name`) VALUES (2, '李四');
INSERT INTO `t_test`(`id`, `name`) VALUES (3, '张三');
INSERT INTO `t_test`(`id`, `name`) VALUES (4, NULL);
3.执行查询
select count(id) from t_test
where id >100
group by name