2010-01-08 41 views
0
UPDATE HotelSourceMap 
SET hsm.hotelid = co.hotelid 
FROM HotelSourceMap AS hsm 
JOIN hotels AS co 
ON (hsm.hotelname= co.[name] 
AND hsm.cityid = co.cityid) 

它給我的錯誤:The multi-part identifier "hsm.hotelid" could not be bound.此更新查詢中的錯誤是什麼?

回答

3

假設領域hotelid存在於表中嘗試改變:

UPDATE HotelSourceMap SET hsm.hotelid ... 

UPDATE HotelSourceMap hsm SET hsm.hotelid ... 

或可替代

UPDATE HotelSourceMap SET hotelid ... 
+0

wow..exactly我想要什麼?其工作GR8 .... UPDATE HSM SET hsm.hotelid = CO .hotelid 來自HotelSourceMap AS hsm JOIN酒店AS公司 ON hsm.hotelname = co。[name] AND hsm.cityid = co.cityid – 2010-01-08 09:59:53

0

校正,您需要使用別名作爲更新表:

UPDATE hsm 
SET.... 
FROM HotelSourceMap AS hsm 
.... 
+0

無這是他們的...... – 2010-01-08 09:54:55

+0

hotelid領域存在Hotelsourcemap表... – 2010-01-08 09:55:41

1

試試這個: -

UPDATE 
    hsm 
SET 
    hotelid = co.hotelid 
FROM 
    HotelSourceMap hsm, 
    Hotels co 
WHERE 
    hsm.hotelname= co.[name] AND hsm.cityid = co.cityid 

在你的主要發言,你說你要更新HotelSourceMap

在您的SET中,您嘗試更新屬於邏輯上不同的實體的字段,hsm

+0

非常感謝它的工作,但請告訴我告訴我什麼是我的查詢錯誤.. – 2010-01-08 09:57:34

+0

已回答了查詢。讓我知道你是否需要更多的澄清。 – 2010-01-08 10:04:08