我需要在名为" RE"的表中显示每个用户创建的条目数。 只有非空条目必须由名为" DD"的列计数。 结果必须显示在表格中。 我已经尝试过这样做,但无济于事:
<?php
if ($username = 'John Doe') {
echo "<table>";
$query = "SELECT user, COUNT(DISTINCT DD) AS number FROM RE GROUP BY user";
$results = mysqli_query($conn, $query);
for ($i = 0; $i < count($results); $i++) {
foreach ($user[$i] as $field => $value) {
if ($field == "number") {$number = $value;}
}
echo "<tr><td>".$user."</td><td>".$number."</td></tr>";
}
echo "</table>";
}
?>
我错过了什么?
答案 0 :(得分:0)
离开我的头顶,计算不同可能不是你想要的,除了你的&#34;空条目的NULL
之外,你还可以有空字符串。&#34;如果是这样,那么计算非NULL
和非空字符串的条目可能是合适的。
SELECT
user,
SUM(CASE WHEN COALESCE(DD, '') <> '' THEN 1 ELSE 0 END) AS number
FROM RE
GROUP BY user
答案 1 :(得分:0)
正确的计算方法&#34;非空&#34;结果是这样的:
SELECT user, COUNT(DD) AS number
FROM RE
GROUP BY user;
这假设&#34;空&#34;是NULL
。