2 回答

TA貢獻1871條經驗 獲得超8個贊
您只需將當前價格屬性與數組中前一個對象的價格進行比較?
像這樣的東西應該有效:
<?php foreach($product_prices_list as $key => $product_price_list):?>
<tr>
<td><?= esc($product_price_list->created_at);?></td>
<td class="text-center"><?= esc(number_format($product_price_list->price));?></td>
<td class="text-center"><?= (!empty($product_prices_list[$key - 1])) ? $product_prices_list[$key + 1]->price - $product_price_list->price: 0; ?></td> //show difference between of two price
</tr>
<?php endforeach;?>

TA貢獻1875條經驗 獲得超5個贊
如果您運行的是 MySQL 8.0,則可以使用窗口函數直接在數據庫中計算此信息:
select
t.*,
price
- lag(price, 1, price) over(partition by product_id order by created_at)
as price_diff
from mytable t
這會向結果集中再添加一列,其中包含同一產品的當前價格與之前價格之間的差異。
- 2 回答
- 0 關注
- 170 瀏覽
添加回答
舉報