0

我有一个 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

我试图使用最大值函数来获取每个 groupby 的最大 rowid,但它变得如此混乱!

4

1 回答 1

3

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

SELECT
    productid,
    color,
    SUM(Quantity) AS TotalQuantity,
    MAX(Timestamp) AS LatestDate
FROM inventory
GROUP BY productid, color;
于 2012-06-20T20:32:25.020 回答