Vu les tableaux suivants:serveur SQL 2008 de fusion
Users
----------------------
Id | 1 | 2
Name| John| Jack
Cars
----------------------
Id | 14 | 26
Name| Mercedes| BMW
Import
-----------------------
Id | 12 | 34
UserName | John | Daniel
UserId | NULL | NULL
CarName | BMW | Mercedes
CarId | NULL | NULL
SomeOtherId| 45 | 45
Je veux essentiellement trouver UserId et carid dans les autres tableaux, S'ils trouvent pas, ils restent NULL,
J'ai essayé quelque chose comme
UPDATE Import i
SET UserId = (SELECT Id FROM Users WHERE Name=i.UserName),
CarId = (SELECT Id FROM Cars WHERE Name= i.CarName)
WHERE SomeOtherId=45;
Dans ce cas, j'obtiens une syntaxe incorrecte. Comment puis-je le réparer? Est-ce un moyen d'utiliser MERGE dans ce cas? (fusionner plus de 2 tables et utiliser une clause WHERE)? Merci.
Merci, je vais vérifier. – gigi