Je veux comparer deux colonnes XML avec plusieurs lignes dans SQL Server 2005.colonne XML comparer au serveur SQL Server 2005
structure de tableau est comme ci-dessous
CREATE TABLE [dbo].[UpdationLog](
[LogID] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,
[CustID] [int] NOT NULL,
[OldValue] [xml] NOT NULL,
[NewValue] [xml] NOT NULL,
CONSTRAINT [PK_UpdationLog] PRIMARY KEY CLUSTERED
(
[LogID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
INSERT INTO [dbo].[UpdationLog] VALUES
(1526,'<ccm CustID="1526" CustName="Teja" Address="Bangalore"/>','<ccm CustID="1526" CustName="Tejas" Address="Bengaluru"/>'),
(1245,'<ccm CustID="1245" CustName="Abhi" Address="Andhra"/>','<ccm CustID="1245" CustName="Abhilash" Address="Andra Pradesh"/>'),
(1145,'<ccm CustID="1145" CustName="Abhi" Address="Assam"/>','<ccm CustID="1145" CustName="Abhinandan" Address="Assam"/>')
Je veux comparer la colonne XML OldValue
et NewValue
et afficher les enregistrements mis à jour.
désiré Sortie
|-------|-------------|---------------|------------
|CustID | Attribute | OldValue | NewValue
|-------|-------------|---------------|---------
|1526 | CustName | Teja | Tejas
|1526 | Address | Bangalore | Bengaluru
|1245 | CustName | Abhi | Abhilash
|1245 | Address | Andhra | Andra Pradesh
|1145 | CustName | Abhi | Abhinandan
http://sqlfiddle.com/#!3/cb0b3/1