30. テーブルの縦横変換
seq
1
2
3
4
5
6
transpose_matrix select
log.log_time
, m.seq
, case m.seq
when 1 then log.word1
when 2 then log.word2
when 3 then log.word3
when 4 then log.word4
when 5 then log.word5
when 6 then log.word6
end as word
from
search_log log
inner join transpose_matrix m
on log.num >= m.seq;
40. ターゲット
テーブルソーステーブル 新規テーブル
作成 すり替え
create table t_NEW (…);
insert into t_NEW select … from SOURCE_TABLE;
begin transaction;
alter table TARGET_TABLE rename to t_OLD;
alter table t_NEW rename to TARGET_TABLE;
commit;
パターン3:アトミック洗い替え