MySQL 中的 SUM 函數是用于計算某個數值字段所有記錄的總和的。如果字段的數據類型是 DECIMAL 或 FLOAT,結果通常會有很多位小數。在某些情況下,需要僅保留兩位小數。
SELECT SUM(price) AS total_price FROM products;
上面的查詢將返回所有產品價格的總和,但結果可能包含很多位小數:
total_price ---------- 329.12999999999994
要將結果限制為兩位小數,必須使用 ROUND 函數。該函數會四舍五入到指定的小數位數。在這種情況下,應將小數位數設置為 2:
SELECT ROUND(SUM(price), 2) AS total_price FROM products;
現在,結果將僅顯示兩位小數:
total_price ---------- 329.13
需要注意的是,如果將結果舍入到兩位小數會導致精度丟失。這意味著在某些情況下,總和可能不等于原始數據的總和。在這種情況下,需要根據具體情況判斷是否需要這樣做。