大家好,我有一个存储过程,在该过程中,我返回给定一周内下达的所有订单的列表。但是,我目前显示了按每个订单的SaleID分组的所有订单。换句话说,当我运行存储过程时,我将所有订单和所有购买分组在一起。喜欢
SaleID Name Item Qty
5020021 John Blue Cheese 1
5020021 John Bread 1
5020256 Carol Milk 1
5020256 Carol Box of eggs 1
5020256 Carol Oat Milk 1
在php中,我将所有这些订单显示为列表格式,但是我想知道新订单的开始和结束时间。不知道这是否可行,我已经看过网上了,但还没有找到任何东西。
当将最后一个if()
保存到变量中时,可以通过简单的SaleId
检查来完成此操作。这样,您可以将当前SaleId
与上一个进行比较。代码可能看起来像这样:
$lastSaleId = null;
while ($row = /* ... */) {
if ($lastSaleId != $row['SaleId']) {
// new sale
echo "Sale ".$row['SaleId']." by ".$row['Name']."<br />";
}
echo "* ".$row['Qty']."x ".$row['Item']"<br />";
$lastSaleId = $row['SaleId'];
}
您可以为此使用GROUP BY
。
SELECT SaleID FROM table GROUP BY SaleID ORDER BY SaleID DESC