SQL文で「insert into hoge (aaa, bbb, ccc) values (xxx, yyy, zzz);」というインサート文がありますが、別テーブルのデータを対象テーブルに書込みたいときってどうやるんだろう?と思ったら知り合いが教えてくれました。
★SQL文
insert into hoge (aaa, bbb, ccc) select xxx, yyy, zzz from hogehoge (nolock) where xxx = abc;
insert into hoge (aaa, bbb, ccc) select a.xxx, b.yyy, a.zzz from hogehoge a (nolock), gehogeho b (nolock) where xxx = abc;
※各カラムにselectで検索したデータをつっこむんですな。
※複数のテーブルを検索したい場合は、from移行に複数テーブルを記述してOK(通常のselect文と同じ)
★算術演算子
カラム+a:足し算
カラム-a:引き算
カラム*a:かけ算
カラム/a:割り算
カラム%a:余り
★関数
併せて、こんなコマンドあるんやね。
ceiling(xxx):切上げ(M$ SQLServer用)
floor(xxx):切捨て
substring(xxx, y, z):文字切り抜き(xxx:カラム,y:開始位置,z:文字数)
len(xxx):文字数(M$ SQLServer用)