Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengembalikan sisa dari dua angka, atau dikenal sebagai operasi modulo. Untuk menghitung hasilnya, parameter pertama dibagi dengan yang kedua.
Sintaksis
MOD(number1, number2)
Argumen
- nomor1
-
Parameter input pertama adalah
INTEGER
,SMALLINT
,BIGINT
, atauDECIMAL
angka. Jika salah satu parameter adalahDECIMAL
tipe, parameter lainnya juga harus berupaDECIMAL
tipe. Jika salah satu parameter adalahINTEGER
, parameter lainnya dapat berupaINTEGER
,SMALLINT
, atauBIGINT
. Kedua parameter juga bisaSMALLINT
atauBIGINT
, tetapi satu parameter tidak bisa menjadiSMALLINT
jika yang lain adalah aBIGINT
. - nomor2
-
Parameter kedua adalah
INTEGER
,SMALLINT
,BIGINT
, atauDECIMAL
angka. Aturan tipe data yang sama berlaku untuk number2 untuk number1.
Jenis pengembalian
Jenis pengembalian fungsi MOD adalah tipe numerik yang sama dengan parameter input, jika kedua parameter input adalah tipe yang sama. Jika salah satu parameter input adalahINTEGER
, bagaimanapun, tipe pengembalian juga akan menjadiINTEGER
. Jenis pengembalian yang valid adalahDECIMAL
,INT
,SMALLINT
, danBIGINT
.
Catatan penggunaan
Anda dapat menggunakan %
sebagai operator modulo.
Contoh
Untuk mengembalikan sisanya ketika angka dibagi dengan yang lain, gunakan contoh berikut.
SELECT MOD(10, 4);
+-----+
| mod |
+-----+
| 2 |
+-----+
Untuk mengembalikan DECIMAL
hasil saat menggunakan fungsi MOD, gunakan contoh berikut.
SELECT MOD(10.5, 4);
+-----+
| mod |
+-----+
| 2.5 |
+-----+
Untuk mentransmisikan nomor sebelum menjalankan fungsi MOD, gunakan contoh berikut. Untuk informasi selengkapnya, lihat Fungsi CAST.
SELECT MOD(CAST(16.4 AS INTEGER), 5);
+-----+
| mod |
+-----+
| 1 |
+-----+
Untuk memeriksa apakah parameter pertama genap dengan membaginya dengan 2, gunakan contoh berikut.
SELECT mod(5,2) = 0 AS is_even;
+---------+
| is_even |
+---------+
| false |
+---------+
Untuk menggunakan% sebagai operator modulo, gunakan contoh berikut.
SELECT 11 % 4 as remainder;
+-----------+
| remainder |
+-----------+
| 3 |
+-----------+
Contoh berikut menggunakan database sampel TICKIT. Untuk informasi selengkapnya, lihat Database sampel.
Untuk mengembalikan informasi untuk kategori bernomor ganjil dalam tabel CATEGORY, gunakan contoh berikut.
SELECT catid, catname
FROM category
WHERE MOD(catid,2)=1
ORDER BY 1,2;
+-------+-----------+
| catid | catname |
+-------+-----------+
| 1 | MLB |
| 3 | NFL |
| 5 | MLS |
| 7 | Plays |
| 9 | Pop |
| 11 | Classical |
+-------+-----------+