MariaDB
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> MariaDB

Cách MOD () hoạt động trong MariaDB

Trong MariaDB, MOD() là một hàm tích hợp trả về hoạt động modulo. Nó trả về phần còn lại của đối số đầu tiên chia cho đối số thứ hai.

Cú pháp

Cú pháp như sau:

MOD(N,M)

Hàm trả về phần còn lại của N chia cho M .

Thao tác này cũng có thể được thực hiện bằng toán tử modulo, vì vậy bạn cũng có thể sử dụng các cú pháp sau để đạt được kết quả tương tự:

N % M
N MOD M

Ví dụ

Dưới đây là một ví dụ để chứng minh:

SELECT MOD(9, 2);

Kết quả:

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

Đây là một số khác:

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

Kết quả:

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

So với Modulo Operator

Dưới đây là một ví dụ so sánh các cú pháp giữa hàm và toán tử:

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

Kết quả:

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

Đối số không phải dạng số

Dưới đây là một ví dụ về những gì sẽ xảy ra khi chúng tôi cung cấp các đối số không phải là số:

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

Kết quả:

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

Hãy xem cảnh báo:

SHOW WARNINGS;

Kết quả:

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

Đối số rỗng

MOD() trả về null nếu một trong hai đối số là null :

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

Kết quả:

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

Thiếu đối số

Đang gọi MOD() với số lượng đối số sai hoặc không có bất kỳ đối số nào dẫn đến lỗi:

SELECT MOD();

Kết quả:

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

Và:

SELECT MOD(10, 2, 3);

Kết quả:

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. Làm thế nào để ghi một số với Zeros hàng đầu trong MariaDB

  2. Khắc phục:Quyền truy cập bị từ chối đối với người dùng ‘root’ @ ’localhost’ trong MariaDB

  3. Mẹo để chuyển từ MySQL Replication sang MySQL Galera Cluster 4.0

  4. MariaDB FIELD () so với FIND_IN_SET ():Sự khác biệt là gì?

  5. Tự động hóa cơ sở dữ liệu với Puppet:Triển khai MySQL &MariaDB Replication