SCRIPTテーブル演算子はデフォルトでAMPごとに一度実行されます。PARTITION BY句が入力データで使用されている場合、SCRIPTはパーティションごとに一度実行されます。
‘エクスポートPATH;’は、SCRIPTテーブル演算子を使用して実行するものの先頭に付加されます。bashプロセスが子を生成すると、子はその環境の一部としてパスを持ちます。
テーブル演算子はデフォルトでtdatuserの下でスクリプトを実行するため、PATHはtdatuserのPATH環境変数を参照します。AUTH機能を使用すると、SCRIPTテーブル演算子の下で実行するオペレーティング システム ユーザーを制御できます。一般に、SCRIPTテーブル演算子のAUTH句で指定されたオペレーティング システムのユーザーは、すでにPATH環境変数をエクスポートしています。
例:PATH変数を設定せずに読み込む
SELECT * from SCRIPT(script_command('echo $PATH;') returns ('PATH varchar(512)')); PATH --------------------------------------------------------------------------- /usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:. /usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:. /usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:. /usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:.