CHECKSUM_AGG (T-SQL)
Berlaku untuk: Titik akhir analitik SQL Server Azure SQL Database Azure SQL Managed Instance SQL di Microsoft Fabric Warehouse di Microsoft Fabric
Fungsi ini mengembalikan checksum nilai dalam grup. CHECKSUM_AGG
mengabaikan nilai null. Klausa OVER dapat mengikuti CHECKSUM_AGG
.
Sintaks
CHECKSUM_AGG ( [ ALL | DISTINCT ] expression )
Argumen
ALL
Menerapkan fungsi agregat ke semua nilai. ALL adalah argumen default.
NYATA
Menentukan yang CHECKSUM_AGG
mengembalikan checksum nilai unik.
expression
Ekspresi bilangan bulat. CHECKSUM_AGG
tidak mengizinkan penggunaan fungsi atau subkueri agregat.
Jenis yang dikembalikan
Mengembalikan checksum dari semua nilai ekspresi sebagai int.
Keterangan
CHECKSUM_AGG
dapat mendeteksi perubahan dalam tabel.
Hasilnya CHECKSUM_AGG
tidak bergantung pada urutan baris dalam tabel. Selain itu, CHECKSUM_AGG
fungsi memungkinkan penggunaan DISTINCT
kata kunci dan GROUP BY
klausa.
Jika nilai daftar ekspresi berubah, daftar nilai checksum daftar juga mungkin akan berubah. Namun, kemungkinan kecil ada bahwa checksum terhitung tidak akan berubah.
CHECKSUM_AGG
memiliki fungsionalitas yang mirip dengan fungsi agregat lainnya. Untuk informasi selengkapnya, lihat Fungsi Agregat (Transact-SQL).
Contoh
Contoh-contoh ini digunakan CHECKSUM_AGG
untuk mendeteksi perubahan di Quantity
kolom ProductInventory
tabel dalam database AdventureWorks2022.
--Get the checksum value before the column value is changed.
SELECT CHECKSUM_AGG(CAST(Quantity AS INT))
FROM Production.ProductInventory;
GO
Berikut adalah hasil yang ditetapkan.
------------------------
262
UPDATE Production.ProductInventory
SET Quantity=125
WHERE Quantity=100;
GO
--Get the checksum of the modified column.
SELECT CHECKSUM_AGG(CAST(Quantity AS INT))
FROM Production.ProductInventory;
Berikut adalah hasil yang ditetapkan.
------------------------
287