1

データベース内での移動に問題があります。列名が異なる2つのテーブルがあり、同じ名前は「zip」ですが、データは同じです。郵便番号がテーブル b にまだ存在しない場合、テーブル A からテーブル b に移動したいと考えています。私はmysqlコマンドラインを使用しています。

4

1 に答える 1

1

使用するINSERT INTO....SELECT

INSERT INTO TableB(colName)
SELECT colName 
FROM    TableB b
        LEFT JOIN TableA a
            ON a.colName = b.colName
WHERE   a.colName IS NULL

TableA.colNameNULL存在しない場合は になりTableBます。colNameテーブルの列名に変更するだけです。

更新 1

INSERT INTO skadate_location_city
    (
        Feature_int_id,
        Admin1_str_code,    
        Country_str_code,
        Feature_dec_lat,    
        Feature_dec_lon,
        zip
    )
SELECT  
        a.city_id     AS Feature_int_id,
        a.state_id    AS Admin1_str_code, 
        a.country_id  AS Country_str_code,
        a.latitude    AS Feature_dec_lat,
        a.longitude   AS Feature_dec_lon,
        a.zip
FROM    skadate_location_zip a
        LEFT JOIN skadate_location_city b
            ON a.zip = b.zip
WHERE   b.zip IS NULL
于 2012-10-07T03:44:51.060 に答える