Modulo-operationen returnerar återstoden eller undertecknad återstod av en division, efter att ett tal har dividerats med ett annat.
Om du behöver få modulo för ett nummer i MariaDB finns här tre alternativ.
MOD()
Funktion
MOD()
funktionen är speciellt utformad för att returnera modulo-driften. Den godtar två argument. Den returnerar resten av dess första argument dividerat med dess andra argument.
Exempel:
SELECT MOD(47, 3);
Resultat:
+------------+ | MOD(47, 3) | +------------+ | 2 | +------------+
Modulo-operatören
Modulo-operatorn (%
) gör samma sak, förutom att du använder en annan syntax:
SELECT 47 % 3;
Resultat:
+--------+ | 47 % 3 | +--------+ | 2 | +--------+
MOD
Sökord/operatör
Även om det här alternativet är listat i MariaDB-dokumentationen för MOD()
funktion, dess syntax är mer inline med modulo-operatorn.
I princip byter du bara ut %
med MOD
och det fungerar exakt likadant:
SELECT 47 MOD 3;
Resultat:
+----------+ | 47 MOD 3 | +----------+ | 2 | +----------+
Nollargument
Alla tre alternativen returnerar null
om endera argumentet/operand är null
.
Exempel:
SELECT
MOD(null, 2),
null % 2,
null MOD 2;
Resultat:
+--------------+----------+------------+ | MOD(null, 2) | null % 2 | null MOD 2 | +--------------+----------+------------+ | NULL | NULL | NULL | +--------------+----------+------------+