簡単な例として、OldとNewという名前の2つのテーブルがあるとします。Oldテーブルには、文字列であるDecisionという列が1つだけあり、「Yes」、「No」、または「Maybe」のみが含まれています。
新しいテーブルは空です。Oldテーブルからすべてのデータを取得して変換し、整数として(または、int 0 = "N"、1 = "Y"、および2 = "Maybe"として)新しいableに格納するにはどうすればよいですか。
ありがとう。
insert into NewTable (Decision)
select case Decision when 'N' then 0 when 'Y' then 1 else 2 end
from OldTable
新しいテーブルにFKがあると思いますか?
Table YesNoMaybe
Byte ID PK
Value varchar(10)
0, N
1, Y
2, Maybe
Insert into New
Select ID
From YesNoMaybe
JOIN Old
ON Old.Decision = YesNoMaybe.[value]
さらに、単一ステートメントのクエリ:
create table NewTable as
select (case Decision when 'N' then 0 when 'Y' then 1 else 2 end) int_col
from OldTable
/