% (Modulus) (Transact-SQL)
Berlaku untuk: Titik akhir analitik SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Platform System (PDW) SQL di Microsoft Fabric Warehouse di Microsoft Fabric
Menghasilkan sisa satu angka dibagi dengan angka lainnya.
Sintaks
dividend % divisor
Argumen
dividend
Ekspresi numerik yang akan dibagi. dividen harus merupakan ekspresi yang valid dari salah satu jenis data dalam kategori bilangan bulat dan jenis data moneter, atau jenis data numerik.
divisor
Ekspresi numerik untuk membagi dividen. divisor harus berupa ekspresi valid dari salah satu jenis data dalam kategori bilangan bulat dan jenis data moneter, atau jenis data numerik .
Jenis hasil
Ditentukan oleh jenis data dari dua argumen.
Keterangan
Anda dapat menggunakan operator aritmatika modulo dalam daftar SELECT
pernyataan pilihan dengan kombinasi nama kolom, konstanta numerik, atau ekspresi valid dari kategori bilangan bulat dan jenis data moneter, atau jenis data numerik .
Contoh
Sampel kode Transact-SQL dalam artikel ini menggunakan AdventureWorks2022
database sampel atau AdventureWorksDW2022
, yang dapat Anda unduh dari halaman beranda Sampel Microsoft SQL Server dan Proyek Komunitas.
J. Contoh dasar
Contoh berikut membagi angka 38
dengan 5
. Hasilnya adalah 7
sebagai bagian bilangan bulat dari hasilnya, dan menunjukkan bagaimana modulo mengembalikan sisa .3
SELECT
38 / 5 AS [Integer],
38 % 5 AS [Remainder];
B. Contoh menggunakan kolom dalam tabel
Contoh berikut mengembalikan nomor ID produk, harga satuan produk, dan modulo (sisanya) dari pembagian harga setiap produk, dikonversi ke nilai bilangan bulat, ke dalam jumlah produk yang dipesan.
SELECT TOP (100) ProductID,
UnitPrice,
OrderQty,
CAST((UnitPrice) AS INT) % OrderQty AS Modulo
FROM Sales.SalesOrderDetail;
GO
Contoh: Azure Synapse Analytics and Analytics Platform System (PDW)
C: Contoh dasar
Contoh berikut menunjukkan hasil untuk %
operator saat membadingkan 3
dengan 2
.
SELECT TOP(1) 3 % 2
FROM DimEmployee;
Berikut set hasilnya.
1