ALTER FUNCTION CheckSuperUser(@u int) RETURNS INT BEGIN DECLARE @count_admins INT; SET @count_admins = 0; DECLARE @i BIGINT; SELECT @i = MIN(UserId) FROM Users; WHILE @i IS NOT NULL BEGIN DECLARE @x INT; SELECT @x = SuperUser FROM Users WHERE UserId = @i; IF @x = 1 BEGIN SET @count_admins = @count_admins + 1 END IF (@count_admins > 3) BEGIN RETURN 1 END SELECT @i = MIN (UserId) FROM Users WHERE UserId > @i; END RETURN 0 END GO