我尝试应用这篇文章Insert values into table based on condition, sql server中给出的提示来制作一个条件插入,根据属性的3个不同值,从同一个表中为一个数字指定另一个属性。这是我的方法:
insert into tablerel (section, number)
select
case section
when 'Paris' then tablerel.numseq=0
when 'NY' then tablerel.numseq=1
when 'Tokio' then tablerel.numseq=3
end
from tabledata
;
PS:section是varchar(5),numseq是数字(1),使用它的原因是为了加快搜索速度
答案 0 :(得分:0)
您必须选择正确的列数。在这种特殊情况下,我认为您需要选择section
本身以及单独的列:
insert into tablerel (section, number)
select
section, /* <-- This one */
case section
when 'Paris' then '0'
when 'NY' then '1'
when 'Tokio' then '3'
end
from tabledata;