MariaDB
 sql >> Baza danych >  >> RDS >> MariaDB

Jak działa MOD() w MariaDB

W MariaDB, MOD() to wbudowana funkcja, która zwraca operację modulo. Zwraca pozostałą część pierwszego argumentu podzieloną przez drugi argument.

Składnia

Składnia wygląda tak:

MOD(N,M)

Funkcja zwraca resztę z N podzielone przez M .

Operację można również wykonać za pomocą operatora modulo, więc możesz również użyć następujących składni, aby osiągnąć ten sam wynik:

N % M
N MOD M

Przykład

Oto przykład do zademonstrowania:

SELECT MOD(9, 2);

Wynik:

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

Oto kilka innych:

SELECT 
    MOD(8, 2),
    MOD(134, 6),
    MOD(9, 5),
    MOD(9, 10);

Wynik:

+-----------+-------------+-----------+------------+
| MOD(8, 2) | MOD(134, 6) | MOD(9, 5) | MOD(9, 10) |
+-----------+-------------+-----------+------------+
|         0 |           2 |         4 |          9 |
+-----------+-------------+-----------+------------+

W porównaniu z operatorem Modulo

Oto przykład porównujący składnie funkcji i operatorów:

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

Wynik:

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

Argumenty nieliczbowe

Oto przykład tego, co się dzieje, gdy dostarczamy argumenty nieliczbowe:

SELECT MOD('Homer', 'Symptom');

Wynik:

+-------------------------+
| MOD('Homer', 'Symptom') |
+-------------------------+
|                    NULL |
+-------------------------+
1 row in set, 3 warnings (0.005 sec)

Zobaczmy ostrzeżenie:

SHOW WARNINGS;

Wynik:

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

Argumenty zerowe

MOD() zwraca null jeśli któryś z argumentów jest null :

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

Wynik:

+--------------+--------------+-----------------+
| MOD(null, 2) | MOD(9, null) | MOD(null, null) |
+--------------+--------------+-----------------+
|         NULL |         NULL |            NULL |
+--------------+--------------+-----------------+

Brakujące argumenty

Wywołanie MOD() z niewłaściwą liczbą argumentów lub bez żadnych argumentów powoduje błąd:

SELECT MOD();

Wynik:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')' at line 1

Oraz:

SELECT MOD(10, 2, 3);

Wynik:

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ' 3)' at line 1

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Porównanie ofert chmury klastrowej Galera:część trzecia Microsoft Azure

  2. Poprawka:Odmowa dostępu dla użytkownika „root”@”localhost” w MariaDB

  3. Jak SYSDATE() działa w MariaDB

  4. MariaDB CURRENT_TIMESTAMP() Objaśnienie

  5. MariaDB CEIL() Objaśnienie