Mysql 如何将sql中AVG函数的小数位数限制为2?

Mysql 如何将sql中AVG函数的小数位数限制为2?,mysql,Mysql,我想把平均数的小数点限制在2 SELECT grade.GStudNo, AVG(grade.Grade) AS Average, students.LName, students.FName, students.MName, students.Course FROM students INNER JOIN grade ON students.StudNo = grade.GStudNo WHERE GSem = '$sem' AND GYear = '$year' GROUP BY grade

我想把平均数的小数点限制在2

SELECT grade.GStudNo, AVG(grade.Grade) AS Average, students.LName, students.FName, students.MName, students.Course
FROM students INNER JOIN grade ON students.StudNo = grade.GStudNo
WHERE GSem = '$sem' AND GYear = '$year'
GROUP BY grade.GStudNo
ORDER BY Average ASC LIMIT 3

使用
ROUND
函数包装平均值计算

SELECT grade.GStudNo, ROUND( AVG(grade.Grade),2 ) AS Average, students.LName, students.FName, students.MName, students.Course
FROM students INNER JOIN grade ON students.StudNo = grade.GStudNo
WHERE GSem = '$sem' AND GYear = '$year'
GROUP BY grade.GStudNo
ORDER BY Average ASC LIMIT 3

将它四舍五入到两个位置。

也许您正在寻找这个:

SELECT grade.GStudNo, CAST(AVG(grade.Grade) AS DECIMAL(10,2)) AS Average, students.LName, students.FName, students.MName, students.Course
FROM students INNER JOIN grade ON students.StudNo = grade.GStudNo
WHERE GSem = '$sem' AND GYear = '$year'
GROUP BY grade.GStudNo
ORDER BY Average ASC LIMIT 3
这只能得到2个小数

CAST(AVG(grade.Grade) AS DECIMAL(10,2))