MySQL MOD Function

摘要:在本教程中,您将学习如何使用 MySQL MOD()函数返回一个数字除以另一个数字的余数。

MySQL MOD()函数语法

MOD()函数返回一个数字除以另一个数字的余数。下面显示了MOD()函数的语法:

MOD(dividend,divisor)
Code language: SQL (Structured Query Language) (sql)

MOD()函数接受两个参数:

  • dividend是一个字面数字或要除的数值表达式。
  • divisor是用于除以被除数的文字数字或数值表达式。

MOD()函数返回被除数除以除数的余数。如果divisor为零,则MOD(dividend, 0)返回NULL

MySQL MOD()函数示例

简单的MOD()函数示例

以下语句将数字 11 除以 3。它返回 2 作为结果的整数部分:

SELECT MOD(11, 3);
Code language: SQL (Structured Query Language) (sql)

这是输出:

MySQL MOD Function Simple Example

MySQL 允许您使用模运算符 (%),它是MOD()函数的同义词,如下所示:

SELECT 11 % 3
Code language: SQL (Structured Query Language) (sql)

输出是:

MySQL MOD Function Modulus Operator Example

MOD()函数还适用于带有小数部分的值,并返回除法后的余数。请参见以下示例:

SELECT MOD(10.5, 3);
Code language: SQL (Structured Query Language) (sql)

下图说明了输出:

MySQL MOD Function - Decimal Number Example

对表列使用MOD()函数

我们将使用示例数据库中的orderDetails进行演示:

orderdetails Table

以下语句判断客户订购的产品数量是奇数还是偶数。

SELECT 
    orderNumber,
    SUM(quantityOrdered) Qty,
    IF(MOD(SUM(quantityOrdered),2),
        'Odd',
        'Even') oddOrEven
FROM
    orderdetails
GROUP BY 
    orderNumber
ORDER BY
    orderNumber;    
Code language: SQL (Structured Query Language) (sql)

在这个例子中:

  • 首先,我们使用SUM()函数获取销售订单的产品总数。
  • 然后,我们使用MOD()函数求出总量除以 2 的余数。这会导致零或一,具体取决于总数是偶数还是奇数。
  • 最后,我们使用IF()函数根据MOD()函数的结果显示OddEven字符串。

这是输出:

MySQL MOD Function Example

在本教程中,您学习了如何使用 MySQL MOD()函数返回一个数字除以另一个数字的余数。

本教程有帮助吗?