SQL Serverのローカル一時テーブル(LOCAL TEMPORARY TABLE)の使い方
このチュートリアルでは、SQL Serverにおけるローカル一時テーブル(LOCAL TEMPORARY TABLE)の使い方を、構文と具体例を交えてわかりやすく解説します。
ローカル一時テーブルはtempdbデータベースに保存され、使用されなくなった時点でSQL Serverによって自動的に削除されるのが特徴です。
ローカル一時テーブルとは
ローカル一時テーブルは、名前の先頭に「#」を付けた一時的なテーブルで、作成したセッション内でのみ参照できます。セッションが終了すると自動的に削除されるため、中間計算結果や一時的なデータ処理に便利です。なお、名前の先頭に「##」を付けたグローバル一時テーブルは、すべてのセッションから参照可能である点が異なります。
構文
CREATE TABLE #テーブル名 ( 列1 データ型 [ NULL | NOT NULL ], 列2 データ型 [ NULL | NOT NULL ], … );
パラメータの説明
#テーブル名
作成したいローカル一時テーブルの名前です。必ず「#」記号で始まる必要があります。
列1、列2 …
テーブルに作成する列(カラム)です。各列には1つのデータ型を指定し、NULL値を許可するかどうか(NULL または NOT NULL)を明示します。指定しない場合はデフォルトでNULLが適用されます。
SQL Serverで利用できる各種データ型の詳細は、公式ドキュメントや関連記事を参考にすると理解が深まります。
注意点
ローカル一時テーブルには、必ず接頭辞として「#」を付けてください(例:#shain)。
使用例
CREATE TABLE #shain ( shain_id INT PRIMARY KEY, sei VARCHAR(50) NOT NULL, mei VARCHAR(50), kyuyo MONEY );
このCREATE TABLE文を実行すると、次の4つの列を持つ「#shain」というローカル一時テーブルが作成されます。
- shain_id:INT型。NULL値を含みません。
- sei:VARCHAR型(最大50文字)。NULL値を含みません。
- mei:VARCHAR型。NULL値を許可します。
- kyuyo:MONEY型。NULL値を許可します。
さらに、このテーブルの主キー(PRIMARY KEY)にはshain_idが設定されています。
#で始まるローカル一時テーブルはtempdbに保存され、SQL Serverのセッション内で不要になった時点で自動的に削除されます。明示的にDROP TABLEを実行しなくても、セッション終了時にクリーンアップされるため、後片付けの手間がかかりません。
-
SQL ServerのPIVOT句とは?クロス集計で行を列に変換する方法を実例付きで解説
SQL Server(Transact-SQL)では、PIVOT句を使用することで、クロス集計(ピボットテーブル)を作成できます。PIVOT句は、テーブル内の行データを列に変換し、集計結果を見やすい形式で表示するための強力な機能です。 下図は、合計値を計算し、行データを列に変換して表示する例です。 PIVOT句の基本構文 SELECT cot_dautien AS bidanh_cot_dautien, [giatri_chuyen1], [giatri_chuyen2], … [giatri_chuyen_n] FROM ( SELECT bang_nguon.cot1
-
【初心者向け】SSMSで学ぶSQL Serverのデータベース基本操作ガイド
こんにちは!前回の記事では、SSMS(SQL Server Management Studio)を使ってSQL Serverをインストールし、接続を確立する方法をご紹介しました。 今回はその続きとして、SQL Server Management Studio(SSMS)の画面操作を通じて、SQL Serverにおけるデータベースの最も基本的な操作方法について詳しく解説していきます。それでは早速始めましょう! #1. 新しいデータベースを作成する 手順1:SQL Serverに接続する まず、SQL Server Management Studioを起動し、SQL Serverに接続します。