2012-05-19 21 views
0
The case: 

我有一個表(300行)不動產與這些細節的索引:與此數據更新表時域包含第二表的

 id  | locality| postcode| declat | declong | alias    | 
    ---------------------------------------------------------------------  
    13  |   |   |   |   | bla bla wimar bla | 
    14  |   |   |   |   | bla bla bla bla | 
    15  |   |   |   |   | bla bla bla arafo | 

和其他郵政編碼表(900行):

locality| postcode | lat  | long 
    ---------------------------------------------  
     cande | 504  | 37.9418594 | -0.7795244 
     arafo | 501  | 38.9418594 | -0.7795255 
     wimar | 500  | 39.9418594 | -0.7795277 

我需要更新這樣的表不動產行:

 id  | locality| postcode| declat  | declong | alias    | 
    ---------------------------------------------------------------------------  
     13  | wimar | 500  | 39.9418594 |-0.7795277 | bla bla wimar bla | 
     14  |   |   |   |   | bla bla bla bla | 
     15  | arafo | 501  | 38.9418594 |-0.7795255 | bla bla bla arafo | 

謝謝。

+0

這兩張表之間的約束是什麼? – DonCallisto

回答

0

根據您的RDBMS,如果這僅僅是一次性的,你可以嘗試這樣的事:

UPDATE realty 
    SET locality = p.locality 
    ,postcode = p.postcode 
    ,declat = p.declat 
    ,declong = p.declong 
    FROM postcodes p 
    WHERE alias LIKE '%' || p.locality || '%' 

的東西,一堆看出來的,雖然(掃描,復配等)

+0

對不起,但在別名LIKE'%'|| p.locality || '%'給我一個語法錯誤。 –

+0

我在Postgresql上運行它沒有錯誤。錯誤是什麼?也許我在測試中創建的表的列名與您的表不匹配? – Glenn

+0

好的,謝謝。 –

相關問題