Kategorien:

Numerische Funktionen (Rundung und Kürzung)

MOD

Gibt den Rest des Eingabeausdrucks expr1 geteilt durch den Eingabeausdruck expr2 zurück.

Äquivalent zum arithmetischen Operator Modulo (z. B. expr1 % expr2).

Syntax

MOD( <expr1> , <expr2> )
Copy

Argumente

expr1

Ein numerischer Ausdruck.

expr2

Ein numerischer Ausdruck.

Rückgabewerte

Gibt entweder eine Ganzzahl oder eine Festkomma-Dezimalzahl zurück.

Nutzungshinweise

  • Sowohl expr1 als auch expr2 müssen numerische Ausdrücke sein. Sie müssen keine Ganzzahlen sein.

  • Der zurückgegebene Wert ist der Rest einer abschneidungsbasierten Division (Abrundung gegen Null), nicht einer Floor-basierten Division (Abrundung nach unten). Wenn also expr1 negativ ist, ist der zurückgegebene Wert negativ. Diese Verhaltensweise unterscheidet sich von der einiger Programmiersprachen (z. B. Python), entspricht aber der Standard-SQL. Weitere Informationen finden Sie auf der Wikipedia-Seite zu Modulo.

Beispiele

Das folgende Beispiel veranschaulicht die Verwendung der Funktion MOD() für ganzzahlige und nicht ganzzahlige Werte:

SELECT MOD(3, 2) AS mod1, MOD(4.5, 1.2) AS mod2;
Copy

Ausgabe:

+------+------+
| MOD1 | MOD2 |
+------+------+
|    1 |  0.9 |
+------+------+
Copy