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 | +---------+------+------------------------------------------+