tags:

views:

125

answers:

3

I have two databases:

DB1 and DB2

How to do something like:

update myServer.DB1.dbo.hotels.Name = myServer.DB2.dbo.hotels.Name

join myServer.DB2.dbo.hotels on myServer.DB2.dbo.hotels.Code=  myServer.DB1.dbo.hotels.Code
where myServer.DB2.dbo.hotels.CountryCoe !=  myServer.DB1.dbo.hotels.CountryCode
+7  A: 
UPDATE  h1
SET     h1.name = h2.name
FROM    myServer.DB1.dbo.hotels h1
JOIN    myServer.DB2.dbo.hotels h2
ON      h2.Code = h1.Code
WHERE   h1.CountryCode <> h2.CountryCode
Quassnoi
Picked this over SQLMenace' identicial version because ON clause is on it's own line -- necessary, when you have AND clauses within your ONs...
Philip Kelley
A: 

example

update h1 
set h1.Name = h2.Name
from DB1.dbo.hotels.Name h1
join DB2.dbo.hotels  h2 on h1.Code= h2.Code
where h2.CountryCoe !=  h1.CountryCode
SQLMenace
A: 

This should do the trick for you. You were missing the SET and FROM clauses.

UPDATE DB1 SET DB1.Name = DB2.Name FROM DB1.dbo.hotels DB1 INNER JOIN DB2.dbo.hotels DB2 ON DB2.Code = DB1.Code WHERE DB2.CountryCoe != DB1.CountryCode

Anthony Martin