1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Snowflake】名前付きステージを作成しよう

Last updated at Posted at 2025-12-19

本記事はBeeX Advent Calendar 2025の19日目の記事です。

はじめに

今回は前回の記事にあった名前付きステージの作成方法を解説します。

前回の記事はこちら

名前付きステージの作成方法

名前付きステージの作成方法にはざっくり分けると2種類あります。

  • ファイル形式を指定せずに作成する方法
  • ファイル形式を指定して作成する方法

ここでいうファイル形式とは、作成するステージに配置されるファイルのフォーマット(ルール)です。
データのロードやアンロードのタイミングで、Snowflakeはこのルールに従ってファイルを操作します。

例えば、1行目はヘッダー行として扱うためロードしないというファイル形式を設定している場合は、ロードのタイミングで1行目以降のデータをロードします。

ファイル形式に指定できるオプションは多いので何が指定できるのか事前に確認することをお勧めします。
※以降、「ファイル形式」はSQL文に合わせて「ファイルフォーマット」と記載します

実際にやってみる

まずは、検証用にデータベースを作成します。(既に存在する場合はスキップしてください。)
image.png

今回は、publicスキーマにステージを作成するため、作成対象のスキーマを指定します。
ステージはスキーマオブジェクトのため、必要に応じてスキーマの作成を行ってください。
image.png

では次に、ステージの作成を行います。

シンプルなステージの作成

まずはシンプルなステージの作成です。
ステージの名前以外は指定せずに作成します。
ファイルフォーマットはデフォルトのものが使用されます。

CREATE STAGE TEST_STAGE1;

image.png

SHOW STAGES;を実行することで現在作成されているステージの一覧を表示できます。

SHOW STAGES;

image.png

ファイルフォーマットをステージ作成時に設定①

次は、ステージ作成時に自分が設定したいファイルフォーマットを設定します。
今回は、CSVファイルで、区切り文字はカンマ、ヘッダー行あり(1行)というフォーマットを設定します。

CREATE STAGE TEST_STAGE2 FILE_FORMAT = (type = csv field_delimiter = ',' skip_header = 1);

image.png
image.png

ファイルフォーマットをステージ作成時に設定②

次は、ファイルフォーマットオブジェクトを事前に作成して、ステージ作成時にオブジェクトを指定する方法です。
先ほどとファイルフォーマットの設定内容は同じです。

CREATE FILE FORMAT TEST_FORMAT type = csv field_delimiter = ',' skip_header = 1;

image.png

SHOW FILE FORMATS;でファイルフォーマットの一覧が表示できます。

SHOW FILE FORMATS;

image.png

先ほど作成したファイルフォーマットオブジェクトを指定してステージを作成します。

CREATE STAGE TEST_STAGE3 FILE_FORMAT = TEST_FORMAT;

image.png
image.png

データベースエクスプローラーからでも各ステージの設定内容や、FILE_FORMATの設定内容を確認することもできます。
image.png

おわりに

今回は名前付きステージの作成方法について解説しました。
今度は外部ステージの作成方法について解説したいと思います。

このエントリが誰かの参考になれば幸いです。

参考リンク

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?