sfsqlの使用

このトピックでは、クライアントでサポートされていないネイティブのHenplusコマンドのリストなど、 sfsql の使用方法について説明します。

注釈

一部のSnowflake SQL コマンドは、 sfsql が使用する JDBC ドライバーを介して実装されます。例えば、内部ステージへのファイルのアップロードと内部ステージからのファイルのダウンロードには PUT/GET を使用します。その結果、これらの操作は sfsql で実行できますが、Snowflakeウェブインターフェイスでは実行できません。

このトピックの内容:

パラメーター設定

HenPlus は、セッションの動作を制御するプロパティを提供します。ただし、 sfsql でこれらのプロパティを設定 しないでください。代わりに、Snowflakeが提供する セッションパラメーター を使用してください。

さらに、 HenPlus は、すべてのセッションで設定できる次のグローバルプロパティを提供します(プロパティ設定は、セッションからログアウトするときに保存されます)。これらのグローバルプロパティを使用して、SQL ステートメントの結果のフォーマットと外観を制御できます。

  • グローバルパラメーターとその現在の値のリストを表示するには、コマンドラインで set-property と入力します。

    プロパティ

    初期値

    説明

    列区切り文字

    |

    表示内の列を分離/フォーマットするために使用される文字を指定します。

    comments-remove

    オフ(またはfalse)

    現在使用されていません。

    echo-commands

    オフ(またはfalse)

    ステートメントを実行する前に表示するかどうかを指定します。

    sql-result-limit

    1000000000

    ステートメントの結果で返される行の最大数を指定します。

    sql-result-showfooter

    オン(またはtrue)

    結果にフッター行を含めるかどうかを指定します。

    sql-result-showheader

    オン(またはtrue)

    結果に列見出しを含むヘッダー行を含めるかどうかを指定します。

  • グローバルパラメーターを設定するには、 set-property に続けてパラメーター名と値を入力します。

    例えば、結果でヘッダーとフッターを無効にするには、次を実行します。

    user1@xy12345.snowflakecomputing.com> set-property sql-result-showfooter false
    user1@xy12345.snowflakecomputing.com> set-property sql-result-showheader false
    

    グローバルプロパティを設定するために、セミコロン(;)などの終了文字を入力する必要がないことに注意してください。

SQL ステートメントとスクリプトファイルの実行

SQL クエリまたはステートメントを実行するには、次を実行します。

  • ステートメントの終わりの直後にセミコロン(;)を入力します。

  • ステートメントの後に新しい行を入力する場合、ステートメントを実行するには2つのセミコロン(;;)を入力する必要があります。

  • 新しい行に、ステートメントを終了するためのコマンドであるスラッシュ(/)を入力することもできます。

例えば、任意の構文を使用して次のクエリを実行できます。

user1@xy12345.snowflakecomputing.com> select * from test1;


user1@xy12345.snowflakecomputing.com> select * from test1
                                      ;;

user1@xy12345.snowflakecomputing.com> select * from test1
                                      /

SQL スクリプトファイルを実行するには、 @ または @@ の後にディレクトリパスとファイルのフルネーム(ファイル拡張子がある場合はファイル名を含む)を使用します。

例えば、 /Users/user1/scripts ディレクトリにある query.sql という名前のファイルを実行するには、次のようになります。

user1@xy12345.snowflakecomputing.com> @/Users/user1/scripts/query.sql

注釈

HenPlus を使うと、 start コマンドを使用してファイルを実行することもできます。ただし、Snowflakeはトランザクションを開始するために START キーワードを予約しているため、 sfsql でこのコマンドを使用してファイルを実行することはできません。詳細については、 トランザクション をご参照ください。

進行中のクエリのキャンセル

まだ完了していないクエリをキャンセルするには、 [CTRL]-c キーボードコンボを使用します。

スプール結果

SQL クエリまたはコマンドの結果をスプールするには、 spool に続けて、ディレクトリパスと結果をスプールするファイルの名前を入力します。

結果のスプールを停止するには、 spool off と入力します。

Snowflakeコマンドラインヘルプへのアクセス

Snowflakeはコマンドラインヘルプトピックを提供します。ヘルプにアクセスするには、次の構文を使用します。

info [ <topic> | <subtopic> ]
  • 値が指定されていない場合、ヘルプのすべての最上位トピックが表示されます。

  • トピックが指定されている場合、トピックのすべてのサブトピックが表示されます。

  • サブトピックが指定されている場合、サブトピックのコンテンツが表示されます。

例:

info;

info warehouses;

info alter_warehouse;

サポートされていない HenPlus コマンド

HenPlus は、オブジェクトの記述やシステムからのデータのインポート/エクスポートなどのタスクを実行するためのネイティブコマンドを提供します。 sfsql でこれらのコマンドを使用 しないでください。代わりに、Snowflakeが提供する SQL コマンドを使用します。

サポートされていない HenPlus コマンド:

同等のSnowflake SQL コマンド:

tablesviews、およびその他の関連コマンド

SHOW <オブジェクト>

describe , idescribe

DESCRIBE <オブジェクト>

importimport-check、およびその他の関連コマンド

COPY INTO <テーブル>, COPY INTO <場所>

dump-outdump-in、およびその他の関連コマンド

PUT, GET