Will something like this work for what you need?
USE ProofOfConcept;
IF OBJECT_ID(N'tempdb..#T') IS NOT NULL
DROP TABLE #T;
CREATE TABLE #T
(ID INT IDENTITY
PRIMARY KEY,
ParentID INT,
Col1 VARCHAR(25),
Col2 VARCHAR(25),
Col3 VARCHAR(25),
Col4 VARCHAR(25),
Col5 VARCHAR(25));
INSERT INTO #T
(ParentID, Col1, Col2, Col3, Col4, Col5)
VALUES (NULL, 'This', 'That', 'or', 'yes', 'me'),
(1, 'This', 'that', 'not', 'yes', 'you');
SELECT T.ID,
T.ParentID,
NULLIF(T.Col1, Parent.Col1) AS Col1,
NULLIF(T.Col2, Parent.Col2) AS Col2,
NULLIF(T.Col3, Parent.Col3) AS Col3,
NULLIF(T.Col4, Parent.Col4) AS Col4,
NULLIF(T.Col5, Parent.Col5) AS Col5
FROM #T AS T
CROSS APPLY (SELECT *
FROM #T AS T2
WHERE T.ParentID = T2.ID) AS Parent;
- Gus "GSquared", RSVP, OODA, MAP, NMVP, FAQ, SAT, SQL, DNA, RNA, UOI, IOU, AM, PM, AD, BC, BCE, USA, UN, CF, ROFL, LOL, ETC
Property of The Thread
"Nobody knows the age of the human race, but everyone agrees it's old enough to know better." - Anon