Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Gibt den Rest von zwei Zahlen zurück, auch bekannt als Modulo-Operation. Um das Ergebnis zu berechnen, wird der erste Parameter durch den zweiten geteilt.
Syntax
MOD(number1, number2)
Argumente
- number1
-
Der erste Eingabeparameter ist eine Zahl vom Typ
INTEGER
,SMALLINT
,BIGINT
oderDECIMAL
. Wenn es sich bei einem der beiden Parameter um einen Parameter des TypsDECIMAL
handelt, muss es sich beim anderen Parameter ebenfalls um einen Parameter des TypsDECIMAL
handeln. Wenn es sich bei einem der beiden Parameter um einen Parameter des TypsINTEGER
handelt, kann es sich beim anderen Parameter um einen Parameter des TypsINTEGER
,SMALLINT
oderBIGINT
handeln. Beide Parameter können auch vom TypSMALLINT
oderBIGINT
sein, aber ein Parameter kann nicht vom TypSMALLINT
sein, wenn der andere einBIGINT
ist. - number2
-
Der zweite Parameter ist eine Zahl vom Typ
INTEGER
,SMALLINT
,BIGINT
oderDECIMAL
. Die gleichen Datentypregeln gelten für number2 wie für number1.
Rückgabetyp
Der Rückgabetyp der MOD-Funktion ist der gleiche numerische Typ wie die Eingabeparameter, wenn beide Eingabeparameter denselben Datentyp haben. Wenn es sich bei einem der Eingabeparameter um einen INTEGER
handelt, ist der Rückgabetyp auch ein INTEGER
. Gültige Rückgabearten sind DECIMAL
, INT
, SMALLINT
und BIGINT
.
Nutzungshinweise
Sie können %
als Modulo-Operator verwenden.
Beispiele
Verwenden Sie das folgende Beispiel, um den Rest einer Division von zwei Zahlen zurückgegeben:
SELECT MOD(10, 4);
+-----+
| mod |
+-----+
| 2 |
+-----+
Verwenden Sie das folgende Beispiel, um ein DECIMAL
-Ergebnis zurückzugeben, wenn Sie die MOD-Funktion verwenden.
SELECT MOD(10.5, 4);
+-----+
| mod |
+-----+
| 2.5 |
+-----+
Verwenden Sie das folgende Beispiel, um vor dem Ausführen der MOD-Funktion eine Zahl umzuwandeln. Weitere Informationen finden Sie unter CAST-Funktion.
SELECT MOD(CAST(16.4 AS INTEGER), 5);
+-----+
| mod |
+-----+
| 1 |
+-----+
Verwenden Sie das folgende Beispiel, um zu überprüfen, ob der erste Parameter gerade ist, indem Sie ihn durch 2 teilen.
SELECT mod(5,2) = 0 AS is_even;
+---------+
| is_even |
+---------+
| false |
+---------+
Verwenden Sie das folgende Beispiel, um % als Modulo-Operator zu verwenden.
SELECT 11 % 4 as remainder;
+-----------+
| remainder |
+-----------+
| 3 |
+-----------+
In diesem Beispiel wird die Musterdatenbank TICKIT verwendet. Weitere Informationen finden Sie unter Beispieldatenbank.
Verwenden Sie das folgende Beispiel, um Informationen zu Kategorien mit ungeraden Nummern in der Tabelle CATEGORY zurückzugeben.
SELECT catid, catname
FROM category
WHERE MOD(catid,2)=1
ORDER BY 1,2;
+-------+-----------+
| catid | catname |
+-------+-----------+
| 1 | MLB |
| 3 | NFL |
| 5 | MLS |
| 7 | Plays |
| 9 | Pop |
| 11 | Classical |
+-------+-----------+