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

次のようにテーブル realty の行を更新する必要があります。

      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 |

ありがとうございました。

4

1 に答える 1

0

rdbms に応じて、これが 1 回限りの場合は、次のようなことを試すことができます。

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

ただし、注意すべきことはたくさんあります(スキャン、重複一致など)

于 2012-05-20T00:57:57.607 に答える