sql >> Database teknologi >  >> RDS >> MariaDB

Hvordan Modulo-operatøren fungerer i MariaDB

I MariaDB er modulo-operatoren (% ) returnerer modulo-operationen. Det returnerer resten af ​​dets første argument divideret med dets andet argument.

Syntaks

Syntaksen ser sådan ud:

N % M

Dette returnerer resten af ​​N divideret med M .

Handlingen kan også udføres ved hjælp af MOD nøgleordet og MOD() fungere. Så du kan bruge følgende syntakser til at opnå det samme resultat:

MOD(N,M)
N MOD M

Eksempel

Her er et eksempel for at demonstrere modulo-operatoren:

SELECT 9 % 2;

Resultat:

+-------+
| 9 % 2 |
+-------+
|     1 |
+-------+

Her er nogle flere:

SELECT 
    8 % 2,
    134 % 27,
    9 % 5,
    9 % 10;

Resultat:

+-------+----------+-------+--------+
| 8 % 2 | 134 % 27 | 9 % 5 | 9 % 10 |
+-------+----------+-------+--------+
|     0 |       26 |     4 |      9 |
+-------+----------+-------+--------+

Sammenlignet med MOD &MOD()

Her er et eksempel, der sammenligner syntakserne på tværs af funktionen og operatorerne:

SELECT 
    9 % 2,
    9 MOD 2,
    MOD(9, 2);

Resultat:

+-------+---------+-----------+
| 9 % 2 | 9 MOD 2 | MOD(9, 2) |
+-------+---------+-----------+
|     1 |       1 |         1 |
+-------+---------+-----------+

Ikke-numeriske argumenter

Her er et eksempel på, hvad der sker, når vi giver ikke-numeriske argumenter:

SELECT 'Bird' % 'Dog';

Resultat:

+----------------+
| 'Bird' % 'Dog' |
+----------------+
|           NULL |
+----------------+
1 row in set, 3 warnings (0.000 sec)

Lad os se advarslen:

SHOW WARNINGS;

Resultat:

+---------+------+------------------------------------------+
| Level   | Code | Message                                  |
+---------+------+------------------------------------------+
| Warning | 1292 | Truncated incorrect DOUBLE value: 'Bird' |
| Warning | 1292 | Truncated incorrect DOUBLE value: 'Dog'  |
| Warning | 1365 | Division by 0                            |
+---------+------+------------------------------------------+

Nul-operander

Resultatet er null hvis en af ​​operanderne er null :

SELECT 
    null % 2,
    134 % null,
    null % null;

Resultat:

+----------+------------+-------------+
| null % 2 | 134 % null | null % null |
+----------+------------+-------------+
|     NULL |       NULL |        NULL |
+----------+------------+-------------+

  1. Hvordan kan jeg simulere en array-variabel i MySQL?

  2. Cloud9 postgres

  3. Kan jeg indstille ignore_dup_key til for en primær nøgle?

  4. Hvordan inkluderes det samlede antal returnerede rækker i resultatsættet fra SELECT T-SQL-kommandoen?