我有以下代码:
SELECT c.c_id, c_name, count(h.h_id) AS count
FROM c
LEFT JOIN h ON h.h_id = c.c_id
WHERE h.info_id = 25
AND c.c_id = {$sqlrow['c_id']}
GROUP BY c.c_id
我正在使用 PHP 在 WHERE 语句中选择 c_id
,不幸的是,如果 h_id
的 c_id
计数为 0 > 则不会选择任何行。有没有办法让 SQL 将没有选择的行表示为 0 计数?
因为 PHP 中的 WHERE
循环没有为特定 c_id
选择任何行,因此似乎会跳过该行。
最佳答案
关于:
SELECT
c.c_id,
c_name,
(
SELECT COUNT(h.h_id)
FROM h
WHERE h.h_id = c.c_id
AND h.info_id = 25
) AS count
FROM c
WHERE c.c_id = {$sqlrow['c_id']}
关于php - MySQL 计数未针对特定 ID 返回 0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8483309/