T-SQL - select into 文とテーブル値コンストラクタ

select into文を使うと、create table文を使わずに新しいテーブルを作成できることを知りました。

INTO 句 (Transact-SQL)

SELECT INTO を使用した行の挿入

そして、テーブル値コンストラクタvalues (...)のあれ)は、from句にも書けることを知りました。

テーブル値コンストラクター (Transact-SQL)

ということで、次のようなクエリで、テーブルを作成して、データ挿入ができるんですね。

select *
into Test
from (values(1, N'a'), (2, N'bb'), (3, N'ccc')) as Value(Id, Name);

作成されたテーブルです。カラムのデータ型や null 許容などは、選択リスト内の式が評価されて決まるんだそうです。

f:id:ichiroku11:20130608143605p:plain

ちょっとしたデータを使ったお試しクエリを書くのに少し楽かなーと思いました。