はじめに:SnowSQLって何者?
こんにちは!Snowflakeの操作と言えば、ブラウザで使う Snowsight を思い浮かべる方が多いと思います。でも、実はSnowflakeにはもう一つ強力な相棒がいるのをご存じでしょうか? それが SnowSQL(スノーエスキューエル)というコマンドラインクライアントです。
SnowSQLは、ターミナル(黒い画面)からSQLを実行したり、CSVファイルをまとめてアップロードしたり、シェルスクリプトに組み込んで自動化したりできる、いわば「玄人好みの入り口」です。この記事では、SnowSQLのインストール手順と最初の一歩となる基本操作を、初心者の方にもわかりやすく紹介していきます!

SnowSQLでできること
SnowSQLは、Snowflakeが公式に提供しているCLI(Command Line Interface)です。Snowsightが「マウスでポチポチ操作」するGUIだとすれば、SnowSQLは「キーボードでサクサク操作」するCLI、というイメージですね。
- SQLクエリ実行:SELECTやCREATE TABLEなどをターミナルで即実行
- ファイルアップロード:
PUTコマンドでローカルのCSVをステージへ転送 - スクリプト自動化:複数のSQLを一括実行、バッチ処理に最適
- 結果のCSV出力:オプションでクエリ結果をファイル化
SnowSQLのインストール手順
1. インストーラのダウンロード
まずは 公式のSnowSQLダウンロードページ から、自分のOS(Windows / macOS / Linux)に合ったインストーラを取得します。Snowflakeのトライアルアカウントを作成済みであれば、Snowsightの「Help & Support」内のDownloadsからも入手可能です。
2. インストールと動作確認
インストーラを実行すると、自動的にPATHが通って snowsql コマンドが使える状態になります。ターミナルを開いて以下を打ってみましょう。
snowsql -v
バージョン番号が表示されればインストール成功です!
3. 接続情報の設定
毎回アカウント名やユーザー名を打ち込むのは面倒なので、設定ファイル ~/.snowsql/config に接続情報を書いておくと便利です。
[connections.myconn]
accountname = xy12345.ap-northeast-1.aws
username = TARO
password = ********
dbname = MY_DB
warehousename = COMPUTE_WH
※パスワードを書きたくない場合は省略すれば、接続時に都度入力できます。

基本的な使い方
接続してクエリを実行する
設定したコネクション名を指定して接続します。
snowsql -c myconn
プロンプトが myconn#COMPUTE_WH@MY_DB.PUBLIC> のような形に変わったら接続成功です。あとは普通にSQLを書くだけ!
SELECT CURRENT_USER(), CURRENT_WAREHOUSE();
SHOW TABLES;
SQLファイルをまとめて実行する
-f オプションでSQLファイルを一括実行できます。定型処理の自動化にぴったりです。
snowsql -c myconn -f daily_load.sql
ローカルファイルをアップロード
SnowSQLの強みのひとつが PUT コマンド。ローカルのCSVをSnowflakeの内部ステージにアップロードできます(これはSnowsightのワークシートでは実行できません!)。
PUT file:///Users/taro/data/sales.csv @MY_STAGE;
よくあるユースケースと注意点
- 定期バッチ:cronやタスクスケジューラと組み合わせて夜間ロード処理を自動化
- 大量データ投入:数百MB〜GB級のCSVは、Snowsightよりも
PUTの方が安定 - 注意:configファイルにパスワードを平文で書く場合は、ファイル権限(
chmod 600)を必ず絞りましょう
まとめ
SnowSQLは、Snowsightだけでは届かない「自動化」「大容量ファイル投入」「スクリプト連携」をカバーしてくれる頼れるツールです。最初はインストールと設定で少しハードルを感じるかもしれませんが、一度動いてしまえばあとは snowsql -c myconn の一行で世界が広がります。Snowflakeの全体像を学んだら、ぜひこのCLIにも触れてみてくださいね!
参考リンク
- SnowSQL (CLIクライアント) – Snowflake Documentation
- SnowSQLのインストール – Snowflake Documentation
- SnowSQLの使用 – Snowflake Documentation
関連記事
- Snowsightの画面構成と基本操作を初心者向けにやさしく解説 – GUIのSnowsightと比べると、SnowSQLの立ち位置がよりわかります
- Snowflakeトライアルアカウントの作り方を初心者向けに解説 – SnowSQLを試すには、まずはSnowflakeアカウントが必要です
- Snowflakeとは?従来のデータウェアハウスとの違いを初心者向けに解説 – Snowflakeそのものの基礎を押さえたい方はこちら
- Snowflakeの3層アーキテクチャを初心者向けにやさしく解説 – SnowSQLが裏で何に接続しているかが理解できます
- Snowflakeの主要な特徴とメリットを初心者向けにやさしく解説 – Snowflakeの強みをおさらい

