Databricks - カスタムSQLの実行アクション
このアクションでは、SQL文字列をDatabricksインスタンスに送信して実行できます。 これは、INSERT、UPDATE、SELECT、DELETEなどのData Manipulation Language(DML)ステートメント、およびCREATE、ALTER、DROPなどのData Definition Language(DDL)コマンドの実行に使用できます。
カスタムSQLの実行アクション
このアクションは、簡単に設定できるよう最適化されていません。 多数の列を含むSELECTステートメントの場合は、代わりにカスタムSQLを使用した行の選択アクションを使用してください。
入力
このアクションを使用するには、次の入力フィールドを設定します。
SQL
有意義な列エイリアスを含めて、SQLクエリを指定します。 クエリは出力データツリーの生成に使用されます。 このため、指定した時点でSQLが実行されます。 バインド変数(例:
id = :id)とパラメーター項目を使用して、入力をパラメーター化します。 バインド変数を使用する場合は、スキーマを手動で定義する必要があります。避けるべき句
SQLでは、
LIMITやTOP(N)のような制限句の使用を避けてください。
パラメーター
このフィールドは
WHERE条件と組み合わせて使用します。 まず、WHERE入力で名前付きバインド変数を宣言します。 次に、この入力フィールドを使用して、これらの変数に値を割り当てます。 パラメーター値には、静的な値またはデータピルを使用できます。 バインド変数に対してデータベースが期待するものに最も近い対応データ型を選択します。出力フィールド
このフィールドを使用して、クエリで返される列を定義します。 Workatoはこれを動的に行いますが、エラーが発生した場合はこのフィールドを使用して任意の列を上書きできます。 ここで定義するフィールド名は、クエリ内の列名と完全に一致している必要があります。
出力
このアクションは次の出力を生成します。
rows
オブジェクトのJSON配列。 各オブジェクトは、選択されたデータの1行を表します。
rows_affected
追加/更新された行数。
rows_count
返された行数。
Databricksにおける数値精度の動作
Databricksは、FLOAT値を4バイトのIEEE 754単精度浮動小数点形式で保存します。 この形式は概数値を表し、約7桁の有効数字精度をサポートします。
7桁を超える有効数字を持つ値を挿入すると、Databricksは表現可能な最も近い浮動小数点値を保存します。 これにより、保存された値が挿入された値とわずかに異なる場合があります。
例:
INSERT INTO table_name (float_col)
VALUES (11.123456789);Databricksは近似値を保存します。これは、FLOATが入力の完全な10進精度を表現できないためです。
正確な10進値を保存するには、次のような固定精度型を使用します:
DECIMAL(18,9)近似精度が許容される場合にのみDOUBLEを使用してください。
Last updated: