V MariaDB, DIV
provádí celočíselné dělení.
Z výsledku dělení vyřadí jakoukoli zlomkovou část napravo od desetinné čárky.
Syntaxe
Syntaxe vypadá takto:
DIV
Číslo k dělení je vlevo a číslo k dělení vpravo.
Příklad
Zde je příklad:
SELECT 100 DIV 2;
Výsledek:
+-----------+ | 100 DIV 2 | +-----------+ | 50 | +-----------+
Dílčí výsledky
Jak již bylo zmíněno, DIV
vyřadí z výsledku dělení jakoukoli zlomkovou část napravo od desetinné čárky.
Příklad:
SELECT 100 DIV 3;
Výsledek:
+-----------+ | 100 DIV 3 | +-----------+ | 33 | +-----------+
Dělení nulou
Pokud ERROR_FOR_DIVISION_BY_ZERO
Režim SQL není nastaven, dělení nulou vrátí NULL
s varováním. Pokud je nastaveno, dělení nulou vrátí chybu, pokud se někdo pokusí aktualizovat sloupec s 1/0 a vrátí také varování.
Zde je příklad NULL
výsledek:
SELECT 100 DIV 0;
Výsledek:
+-----------+ | 100 DIV 0 | +-----------+ | NULL | +-----------+ 1 row in set, 1 warning (0.001 sec)
Podívejme se na varování:
SHOW WARNINGS;
Výsledek:
+---------+------+---------------+ | Level | Code | Message | +---------+------+---------------+ | Warning | 1365 | Division by 0 | +---------+------+---------------+
Neplatné operandy
Použití neplatných operandů má za následek NULL
s varováním:
SELECT 'One' DIV 'Two';
Výsledek:
+-----------------+ | 'One' DIV 'Two' | +-----------------+ | NULL | +-----------------+ 1 row in set, 3 warnings (0.013 sec)
Zkontrolujte varování:
SHOW WARNINGS;
Výsledek:
+---------+------+------------------------------------------+ | Level | Code | Message | +---------+------+------------------------------------------+ | Warning | 1292 | Truncated incorrect DECIMAL value: 'One' | | Warning | 1292 | Truncated incorrect DECIMAL value: 'Two' | | Warning | 1365 | Division by 0 | +---------+------+------------------------------------------+