在 MySQL 数据库中,%或mod() 是求余运算符,用于获取除法运算的余数。
SELECT num1 % num2
或
SELECT mod(num1,num2) SELECT num1 mod num2
其中,num1和num2是要进行求余运算的两个数。
mysql> SELECT 10 % 3,mod(10,3),10 mod 3; +--------+-----------+----------+ | 10 % 3 | mod(10,3) | 10 mod 3 | +--------+-----------+----------+ | 1 | 1 | 1 | +--------+-----------+----------+
在上述示例中,使用了求余运算符计算 10 除以 3 的余数,结果为 1。
mysql> SELECT MOD(34.5,3); +-------------+ | MOD(34.5,3) | +-------------+ | 1.5 | +-------------+
需要注意的是,在 MySQL 中,`%`求余运算符的运算结果的符号与被除数的符号相同。也就是说,如果被除数为正数,那么运算结果也为正数;如果被除数为负数,那么运算结果也为负数。
mysql> SELECT 34%0; +------+ | 34%0 | +------+ | NULL | +------+
MOD(N,0) 返回 NULL。