簡體   English   中英

mySQL 如何獲取按另一列分組並按日期排序的 COUNT 中可見的最后日期

[英]mySQL how to get last date visible in a COUNT grouped by another column and ordered by date

我有一個包含這些列的表:

日期

訂單號

我需要顯示按品牌分組的報告,按日期降序排列,按 order_number 計數,顯示每個品牌最后一個訂單的最近日期。

我的代碼是這樣的:

<?php
$sql = "SELECT *, COUNT(*) FROM table GROUP BY brand order by date DESC;";
$resultg = mysqli_query($con, $sql);
while($row = mysqli_fetch_assoc($result)) {
    $date = $row["date"];
    $brand = $row["brand"];
    echo "<table>";
        echo "<tr>";  
            echo "<td class='timecell'>";
                echo date('d-m H:i.s', strtotime($date));
            echo "</td>";
            echo "<td class='brandcell'>";
                echo $brand;
            echo "</td>";
            echo "<td class='countcell'>";
                echo $row['COUNT(*)'];
            echo "</td>";
        echo "</tr>";
    echo "</table>";
}
?>

我得到的 output 是按日期降序排列的,它顯示了每個品牌的訂單數量,但每個組顯示的日期是該品牌的第一個訂單日期,並且列表中的訂單也是使用日期該品牌的第一個訂單,而我需要顯示該品牌的最后一個訂單的日期,並使用該品牌的最后一個訂單的日期降序排列列表。 必須如何編寫查詢才能獲得該結果?

如果我理解正確,也許將 MAX(date) 與 COUNT(*) 一起使用?

此查詢將顯示按日期排序的所有訂單以及您獲得的品牌訂單數量。

SELECT t1.*, count_b 
FROM table1 t1 
    INNER JOIN (SELECT brand, COUNT(*) count_b FROM table1 GROUP BY brand) b ON t1.brand = b.brand 
 order by date DESC

找到了解決方案。

目標是按品牌對訂單進行分組,顯示該品牌的最后一個訂單日期,並使列表按每個品牌的最后一個訂單日期降序排列。

達到目標的 sql 語法是:

SELECT *, MAX(date), COUNT(*) FROM table GROUP BY brand order by MAX(date) DESC;

這會產生正確的結果,並且可以格式化如下:

<?php

$sql = "SELECT *, COUNT(*) FROM table GROUP BY brand order by date DESC;";
$resultg = mysqli_query($con, $sql);
while($row = mysqli_fetch_assoc($result)) {
    $brand = $row["brand"];
    echo "<table>";
        echo "<tr>";  
            echo "<td class='timecell'>";
                $row['MAX(date)'];
            echo "</td>";
            echo "<td class='brandcell'>";
                echo $brand;
            echo "</td>";
            echo "<td class='countcell'>";
                echo $row['COUNT(*)'];
            echo "</td>";
        echo "</tr>";
    echo "</table>";
}

?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM