一時テーブルを作成する - SQL Server

SQL Serverで一時テーブルを作成するSQL文を紹介します。

概要

SQL Serverの操作等で一時的にテーブルを作成したい場合があります。
SQL Serverでは一時テーブルを作成する機能があり、接続しているセッションのみで有効なテーブルを作成できます。

書式

ローカル一時テーブル作成の書式は次の通りです。
CREATE TABLE #[テーブル名] (
  [列名1] [型名1]
  ,[列名2] [型名2]
  ...
  ,[列名n] [型名n]
)

他のユーザーとも共有可能なグローバル一時テーブル作成の書式は次の通りです。
CREATE TABLE ##[テーブル名] (
  [列名1] [型名1]
  ,[列名2] [型名2]
  ...
  ,[列名n] [型名n]
)

記述例

CREATE TABLE #myitem (
 id int
 ,name varchar(16)
 ,price int
)

一時テーブルの操作

作成した一時テーブルへのレコードの挿入や更新は通常のテーブルと同じ操作で実行できます。
以下の記事を参照してください。

例1

次のSQL文を実行し、一時テーブルを作成します。
CREATE TABLE #myitem (
 id int IDENTITY(1,1) NOT NULL
 ,name varchar(16)
 ,price int
)

テーブルにレコードを挿入します。
INSERT INTO #myitem (name, price) VALUES ('ぺんぎんクッキー',140)

レコードを表示します。
SELECT * FROM #myitem

以下の結果が戻ります。
idnameprice
1ぺんぎんクッキー140

例2:配列的な利用

次のSQL文を実行し、一時テーブルを作成します。
CREATE TABLE #myarray (
 elem int
)

テーブルにレコードを挿入します。
INSERT INTO #myarray (elem) VALUES (6),(2),(8),(10),(5),(12),(4)

レコードを表示します。
SELECT * FROM #myarray

以下の結果が戻ります。
elem
6
2
8
10
5
12
4

著者
iPentec.com の代表。ハードウェア、サーバー投資、管理などを担当。
Office 365やデータベースの記事なども担当。
掲載日: 2023-03-29
iPentec all rights reserverd.