Hi Paul,Something like this :CREATE TABLE #TEST (UID INT, FIELD1 INT, FIELD2 INT, FIELD3 INT, FIELD4 INT)INSERT INTO #TEST (UID, FIELD1, FIELD2, FIELD3, FIELD4)SELECT 1, 1, 1, 2, NULLUNION ALLSELECT 2, 1, 2, 3, NULLUNION ALLSELECT 3, 2, 2, 2, 1UNION ALLSELECT 4, 5, 5, 5, NULLUNION ALLSELECT 5, 5, 5, 5, NULLUPDATE #TESTSET FIELD3 = (SELECT TOP 1 CONVERT(INT, RAND(CONVERT(BINARY(4),NEWID()))*100) FROM #TEST AS A WHERE A.UID = #TEST.UID AND CONVERT(INT, RAND(CONVERT(BINARY(4),NEWID()))*100) NOT IN (SELECT FIELD3 FROM #TEST))WHERE FIELD1 = FIELD2AND FIELD2 = FIELD3DROP TABLE #TEST
The red can be changed to generate much larger number.Actually, no need for the TOP 1 come to think about it
------------------------------------------------------------------------------I enjoy using SQL Server but I am not part of the Microsoft fanboy club! NEVER!!