Bagikan melalui


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.

Konvensi sintaks transact-SQL

Sintaksis

CHECKSUM_AGG ( [ ALL | DISTINCT ] expression )  

Catatan

Untuk melihat sintaks Transact-SQL untuk SQL Server 2014 (12.x) dan versi yang lebih lama, lihat Dokumentasi versi sebelumnya.

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  

Lihat juga

CHECKSUM (T-SQL)

HASHBYTE (Transact-SQL)

BINARY_CHECKSUM (T-SQL)

Klausul OVER (Transact-SQL)