0

この些細な質問で申し訳ありませんが、ここで提供されている同様の回答をいくつか試してみましたが、役に立ちませんでした。

1 つのデータベースを作成しています (1901 年と 1911 年のアイルランド国勢調査データの 2 つのセットをマージします)。

列 Age (人の年齢を含む) と列 1901Age (現在は空) があります。Age 列のデータを 1901Age 列に自動的にコピーしたいと考えています。

私はその場でSQLを学んでいるので、これは初心者ですが、INSERT SELECTと同様のさまざまな順列はうまくいきませんでした。

where 列にタグを付けて上記を実行することもできた場合、以下のクエリは、上記のクエリを適用する必要がある結果をフィルター処理します (それが理にかなっていれば!)

UPDATE `Census`.`Merged`
SET `Age` = `1901Age`
WHERE (
(
`Age` >= '0'
)
AND (
`1901Age` = '0'
AND `BothCensusStatus` = '1901Only'
4

1 に答える 1

0

おそらくマイナーなタイプミスだけです: 行方不明)で、影響を逆の順序で書きます:

UPDATE `Census`.`Merged`
SET `1901Age` = `Age`               -- Copy from `Age` to `1901Age`
WHERE `Age` >= 0                    -- Compare on integers
AND `1901Age` = 0                   -- Here again 
                                    -- (BTW, would probably have been better to  
                                    --  use NULL to denote "non-existent" data)
AND `BothCensusStatus` = '1901Only'
于 2013-08-21T09:14:25.690 に答える