I'm still not clear with your expected output...But maybe this?Sample datadeclare @t table (ID int, fieldID varchar(10),fieldvalue varchar(50))insert @tselect 6, '12a3', 'active'union all select 6, '456b', 'support'union all select 6, '222x' ,'10'union all select 10, '456b', 'maintenance'union all select 13, '222x', '15'union all select 14, '12a3', 'inactive'union all select 14, '456b', 'support'declare @r table (fieldID varchar(10),fieldlabel varchar(50))insert @rselect '12a3', 'status'union all select '456b', 'position'union all select '222x', 'buildingID'
QuerySELECT b.ID,a.fieldID,a.fieldlabelFROM @r a CROSS APPLY (SELECT DISTINCT ID FROM @t) bORDER BY b.ID
ResultID fieldID fieldlabel----------- ---------- --------------------------------------------------6 12a3 status6 456b position6 222x buildingID10 12a3 status10 456b position10 222x buildingID13 12a3 status13 456b position13 222x buildingID14 12a3 status14 456b position14 222x buildingID