首頁  >  文章  >  資料庫  >  如何在MySQL中找到累計現金金額超過限制的第一行?

如何在MySQL中找到累計現金金額超過限制的第一行?

Linda Hamilton
Linda Hamilton原創
2024-11-04 05:31:02369瀏覽

How to Find the First Row Where Cumulative Cash Sum Exceeds a Limit in MySQL?

使用MySQL 來擷取先前現金金額超出限制的第一行

問題定義:給定一個包含id 和cash 列的表,任務是檢索前幾行中cash 的累計總和超過指定值的第一行。例如,如果所需的限制是 500,則函數應傳回現金累計金額超過 500 的第三行。

MySQL 解決方案:

嘗試時如果在WHERE 子句中比較聚合(例如,WHERE SUM(cash) > 500)證明不成功,則可以利用HAVING 子句來比較聚合。但是,HAVING 子句需要對應的 GROUP BY 子句。

為了解決這個問題,可以使用以下查詢:

該查詢使用子查詢來計算現金累計金額對於每一行,它存儲在 running_total 列別名中。透過引用WHERE子句中的running_total欄,可以檢索累計和超過指定限制的第一行。 LIMIT 1 子句確保只傳回第一個這樣的行。

以上是如何在MySQL中找到累計現金金額超過限制的第一行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn