CHECKSUM 會針對它的引數清單,來計算稱為總和檢查碼的雜湊值
CHECKSUM可應用於比對兩個資料表內容,列出經過CHECKSUM後雜湊值不符的資料列。範例程式碼如下。
需注意的是,此函數無法應用於下列資料型態:
text、ntext、image、XML 和 cursor,以及基底類型為上述任一類型的 sql_variant。
USE tempdb GO --****************建立範例資料表Start******************* IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[tblA]') AND type in (N'U')) DROP TABLE [dbo].[tblA] GO CREATE TABLE dbo.tblA ( c1 int NOT NULL IDENTITY (1, 1), c2 nvarchar(10) NULL ) GO IF EXISTS (SELECT * FROM sys.objects WHERE
object_id = OBJECT_ID(N'[dbo].[tblA]') AND type in (N'U')) DROP TABLE [dbo].[tblB] GO CREATE TABLE dbo.tblB ( c1 int NOT NULL IDENTITY (1, 1), c2 nvarchar(10) NULL ) GO INSERT INTO tblA (C2) VALUES(N'測試A'),(N'測試B'),(N'測試C') INSERT INTO tblB (C2) VALUES(N'測試A'),(N'測試D'),(N'測試C') --SELECT * FROM tblA --SELECT * FROM tblB --****************建立範例資料表 END******************* select * FROM (select CHECKSUM(*) aCheckSum,* from tblA) a JOIN (select checksum(*) bCheckSum,* from tblB) b on a.c1=b.c1 where aCheckSum <> bCheckSum
全站熱搜
留言列表