SQL: fonction Isnull

J'essaie de mettre à jour une table (code ci-dessous). Où, quand une correspondance je veux extraire le UserID, s'il n'y a aucune correspondance je veux lui donner la valeur 6000. Cependant, le manuscrit ne fait pas ce que je m'attendrais à ce qu'il fasse. Si U.UserID n'existe pas, il n'écrit aucune valeur (6000), pas si elle est nulle. Comment puis-je contourner le problème?

/* Ensure Person (UserID)*/ UPDATE #List SET #List.UserID = ISNULL(U.UserID, '6000') FROM #List INNER JOIN table1 t1 ON #List.ID = t1.ID INNER JOIN User U ON U.FirstName + ' ' + U.Surname = t1.PersonFullname 

Selon moi, le problème de join la table avec INNER JOIN signifie que cela n'apportera que des loggings correspondants. Maintenant, si vous voulez mettre à jour tous les loggings de la première table non seulement correspondants, mais aussi d'autres loggings où UserID est nul. Utilisation de LEFT JOIN

 UPDATE List SET List.UserID = ISNULL(U.UserID, '6000') FROM #iList List LEFT JOIN table1 t1 ON List.ID = t1.ID LEFT JOIN User U ON U.FirstName + ' ' + U.Surname = t1.PersonFullname