对这个微不足道的问题道歉,但我已经尝试了一些类似的答案在这里提供无济于事。
我正在创建一个单一的数据库(合并两套1901年和1911年的爱尔兰人口普查数据)。
我有一个列Age(包含人口年龄),还有一个列1901Age(当前为空)。我想自动将Age列中的数据复制到1901Age列中。
我正在学习SQL,所以我是一个新手,但INSERT SELECT和各种类似的排列对我来说都不起作用。
如果我也可以使用标记的where列进行上述操作 - 下面的一个过滤我需要应用上述查询的结果(如果这有意义的话!)
UPDATE `Census`.`Merged`
SET `Age` = `1901Age`
WHERE (
(
`Age` >= '0'
)
AND (
`1901Age` = '0'
AND `BothCensusStatus` = '1901Only'
答案 0 :(得分: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'