unless you have a trigger that prevents that, don't say never...In any case...CREATE TABLE myTable99(ID int, NameOne varchar(30), IDNumber int)GOINSERT INTO myTable99(ID, NameOne, IDNumber)SELECT 1, 'John', 2983 UNION ALLSELECT 2, 'Paul', 2983 UNION ALLSELECT 3, 'James', 2984 UNION ALLSELECT 4, 'Lady', 2985 UNION ALLSELECT 5, 'Jones', 2983 UNION ALLSELECT 6, 'Gaga', 2985GO SELECT xxx.IDNumber, s.NameOne, m.NameOne, e.NameOne FROM (SELECT IDNumber, MIN(ID) AS MIN_ID, MAX(ID) AS MAX_ID FROM myTable99 GROUP BY IDNumber) AS XXXLEFT JOIN myTable99 s ON s.IDNumber = XXX.IDNumber AND s.ID = xxx.MIN_IDLEFT JOIN myTable99 m ON m.IDNumber = XXX.IDNumber AND m.ID > xxx.MIN_ID AND m.ID < xxx.MAX_IDLEFT JOIN myTable99 e ON e.IDNumber = XXX.IDNumber AND e.ID = xxx.MAX_ID AND xxx.MIN_ID <> xxx.MAX_ID GODROP TABLE myTable99GO
Brett8-)Hint: Want your questions answered fast? Follow the direction in this linkhttp://weblogs.sqlteam.com/brettk/archive/2005/05/25/5276.aspxWant to help yourself?http://msdn.microsoft.com/en-us/library/ms130214.aspx