diff --git a/pkg/expression/builtin_math.go b/pkg/expression/builtin_math.go
index 9b67e6c6c3de1..0d3ff3fa57a60 100644
--- a/pkg/expression/builtin_math.go
+++ b/pkg/expression/builtin_math.go
@@ -1818,7 +1818,7 @@ func (b *builtinRadiansSig) evalReal(row chunk.Row) (float64, bool, error) {
 	if isNull || err != nil {
 		return 0, isNull, err
 	}
-	return x * math.Pi / 180, false, nil
+	return x * (math.Pi / 180), false, nil
 }
 
 type sinFunctionClass struct {
diff --git a/pkg/expression/builtin_math_test.go b/pkg/expression/builtin_math_test.go
index 9e44f6e5167e5..11a8c43dade7b 100644
--- a/pkg/expression/builtin_math_test.go
+++ b/pkg/expression/builtin_math_test.go
@@ -751,6 +751,8 @@ func TestRadians(t *testing.T) {
 		{float64(180), float64(math.Pi)},
 		{-360, -2 * float64(math.Pi)},
 		{"180", float64(math.Pi)},
+		{float64(1.0e308), float64(1.7453292519943295e306)},
+		{float64(23), float64(0.4014257279586958)},
 	}
 
 	Dtbl := tblToDtbl(tbl)
diff --git a/pkg/expression/builtin_math_vec.go b/pkg/expression/builtin_math_vec.go
index 896fe64018f42..c21d143aefd57 100644
--- a/pkg/expression/builtin_math_vec.go
+++ b/pkg/expression/builtin_math_vec.go
@@ -310,7 +310,7 @@ func (b *builtinRadiansSig) vecEvalReal(input *chunk.Chunk, result *chunk.Column
 		if result.IsNull(i) {
 			continue
 		}
-		f64s[i] = f64s[i] * math.Pi / 180
+		f64s[i] = f64s[i] * (math.Pi / 180)
 	}
 	return nil
 }
diff --git a/tests/integrationtest/r/expression/builtin.result b/tests/integrationtest/r/expression/builtin.result
index 5a4f5f7e31fe9..6bab8d8948217 100644
--- a/tests/integrationtest/r/expression/builtin.result
+++ b/tests/integrationtest/r/expression/builtin.result
@@ -520,7 +520,7 @@ crc32(0)	crc32(-0)	crc32('0')	crc32('abc')	crc32('ABC')	crc32(NULL)	crc32('')	cr
 4108050209	4108050209	4108050209	891568578	2743272264	NULL	0	62177901
 SELECT radians(1.0), radians(pi()), radians(pi()/2), radians(180), radians(1.009);
 radians(1.0)	radians(pi())	radians(pi()/2)	radians(180)	radians(1.009)
-0.017453292519943295	0.05483113556160754	0.02741556778080377	3.141592653589793	0.01761037215262278
+0.017453292519943295	0.05483113556160755	0.027415567780803774	3.141592653589793	0.01761037215262278
 drop table if exists t;
 create table t(a int);
 insert into t values(1),(2),(3);