分组并显示该组的最新输入日期

时间:2012-06-20 20:11:24

标签: php mysql

我有一个groupby和sum表,用于显示当前股票(它对所有股票分组进行分组和汇总)。我想现在显示每个groupby组的最新输入日期。

以下是我正在使用的内容:

-------------------------------------------------------------------
ProductID   |  Color  | Timestamp          |  Quantity  |  RowID  |
-------------------------------------------------------------------
25          |  Red    | 10/10/10 06:22:15  |  250       |  1      |
-------------------------------------------------------------------
32          |  Green  | 10/10/10 06:23:45  |  100       |  2      |
-------------------------------------------------------------------

$query = "SELECT productid, color, SUM(Quantity) AS TotalQuantity FROM inventory GROUP BY productid, color";
$result = mysql_query($query) or die(mysql_error());

   // Table markup here
   echo '<tr><td>'. $row['productid'] . '</td><td>' . $row['color']. '</td><td>'. $row['TotalQuantity'];
   // Table markup here

我试图使用max value函数来获取每个groupby的最大rowid,但它变得如此令人困惑!

1 个答案:

答案 0 :(得分:3)

好吧,如果每个组的最新录入日期也是最近的一个,你可以简单地使用:

SELECT
    productid,
    color,
    SUM(Quantity) AS TotalQuantity,
    MAX(Timestamp) AS LatestDate
FROM inventory
GROUP BY productid, color;