从 where = date 中使用上面的 distinct 选择数据后,获取行计数为零
Getting rows count as zero after slecting data from where = date as using distinct above
您好,我正在检索不同的日期,然后我试图检索具有该日期的行,但我将它们设为零..
这是代码
$sql = "SELECT DISTINCT date FROM video_data ORDER BY id DESC";
$result = mysqli_query($connection, $sql);
while ($row = mysqli_fetch_assoc($result)) {
$date = $row['date'];
echo "<tr>";
echo "<td>$date</td>";
$query_order = "SELECT * FROM video_data WHERE date=$date";
$query_order_total = mysqli_query($connection,$query_order);
var_dump($query_order);
$total = mysqli_num_rows($query_order_total);
echo "<td>$total</td>";
echo"<tr>";
但是当我选择 "SELECT * FROM video_data"
它显示正确的计数
您在 $date
前后缺少“ ”
$query_order = "SELECT * FROM video_data WHERE date='$date'";
就是说:比方说,当您在第一个查询中找到 60 个日期时,您将触发 60 个新查询来查找实际数据。
怎么样:
$sql = "SELECT COUNT(*) total, date
FROM video_data
GROUP BY date
ORDER BY date DESC";
$result = mysqli_query($connection, $sql);
while ($row = mysqli_fetch_assoc($result)) {
echo "<tr>";
echo "<td>". $row['date'] ."</td>";
echo "<td>". $row['total']. "</td>";
echo"<tr>";
}
您好,我正在检索不同的日期,然后我试图检索具有该日期的行,但我将它们设为零.. 这是代码
$sql = "SELECT DISTINCT date FROM video_data ORDER BY id DESC";
$result = mysqli_query($connection, $sql);
while ($row = mysqli_fetch_assoc($result)) {
$date = $row['date'];
echo "<tr>";
echo "<td>$date</td>";
$query_order = "SELECT * FROM video_data WHERE date=$date";
$query_order_total = mysqli_query($connection,$query_order);
var_dump($query_order);
$total = mysqli_num_rows($query_order_total);
echo "<td>$total</td>";
echo"<tr>";
但是当我选择 "SELECT * FROM video_data"
它显示正确的计数
您在 $date
前后缺少“ ”$query_order = "SELECT * FROM video_data WHERE date='$date'";
就是说:比方说,当您在第一个查询中找到 60 个日期时,您将触发 60 个新查询来查找实际数据。
怎么样:
$sql = "SELECT COUNT(*) total, date
FROM video_data
GROUP BY date
ORDER BY date DESC";
$result = mysqli_query($connection, $sql);
while ($row = mysqli_fetch_assoc($result)) {
echo "<tr>";
echo "<td>". $row['date'] ."</td>";
echo "<td>". $row['total']. "</td>";
echo"<tr>";
}