問題タブ [plpython]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
364 参照

python - クエリでいくつの plpython 実行環境が開かれていますか?

postgres (および greenplum) のユーザー定義関数は分離して実行されますか? plpythonu ユーザー定義関数を使用したクエリがある場合、いくつの実行環境が開いていますか? クエリの実行時に、共有された Python インタープリターの状態はありますか?

plpython ユーザー定義関数があるとします。

テーブルcreate table files (name varchar, path varchar)とそのテーブルに対するクエリの場合、次のようになります。

plpython 関数を実行するたびに、新しい Python 環境が生成されますか? MPP データベースでは、postgres の動作が各セグメント間で複製され、セグメント間で状態が共有されていないと想定できますか?

0 投票する
2 に答える
949 参照

python - spssのようにSQLでピボットテーブルを作成する

PostgreSQL には大量のデータがあります。しかし、SPSS のようにいくつかのピボット テーブルを作成する必要があります。たとえば、都市と州のテーブルがあります。

実際、このテーブルには 4 つの都市と 2 つの州があります。のようなパーセンテージでピボットテーブルをやりたい

この特定のケースでSQLを使用する方法を理解しています。しかし、私が望むのは、ストアド関数を使用して、ある変数を別の変数と交差させることです(単に個別の値を数え、「count(*) where variable_in_column_names=1 など)」で割ります)。私は今plpythonを見ています。いくつかの質問は:

  1. 出力列の数とタイプに適合する形状の一時テーブルを持たないレコードのセットを出力する方法。
  2. 多分実用的な解決策がありますか?

ご覧のとおり、入力はテーブル名、最初の変数の列名、2 番目の変数の列名になります。関数の本体で多くのクエリを実行し(count(*)、変数内のすべての個別の値をループしてカウントするなど)、パーセンテージでテーブルを返します。

  1. 実際、私は1つのクエリ(約10k)に多くの行を持っていません.plpythonではなく、生のpythonでそのようなことを行う最良の方法かもしれません?
0 投票する
5 に答える
21235 参照

python - ポストグルとパイソン

postgres 9.2 で、トリガーとなる Python プログラムを作成しようとしています。外部プログラム (ローカル ディスク上の exe) を実行したいので、python を使用して実行しています。次のような単純なプログラムを作成しようとすると:

エラーが発生します:

私が実行すると:

エラーが発生します:

Windows 7 と python 2.5 を使用しています。

私は多くの場所を見てきましたが、解決策を見つけることができません。

何か案は?

0 投票する
1 に答える
1359 参照

postgresql - plpythonは、INSERT TRIGGERですべての行を取得します

Pythonトリガープロシージャを使用して、レプリケーションに似たものを実装しようとしています。

手順

引き金

これは機能しますが、あまり効率的ではありません。行は一括で挿入され、ソケットを再利用してすべてを送信したいと考えています。ただし、ステートメント レベルのトリガーを実行すると、行にアクセスできません。

最後に処理される行 ID となるシーケンスを定義することを考えていました。SELECT次に、それを使用して、ステートメント レベルのトリガー内でプロシージャ内のすべてのデータを取得します。問題は、インクリメントせずにシーケンス値を取得する方法がないように見えることです。

この問題にアプローチする方法について何か提案はありますか?

0 投票する
2 に答える
4078 参照

python - plpythonのインポートステートメントはどのように処理されますか?

私はいくつかのjsonマジックを行うplypython関数を持っています。このため、明らかにjsonライブラリをインポートします。

関数を呼び出すたびにインポートが呼び出されますか?注意しなければならないパフォーマンスへの影響はありますか?

0 投票する
0 に答える
200 参照

python - テーブルの作成をパラメータ化するときの PL/Python エラー

PostgreSQL 8.3 データベースで、日付によってパラメータ化された一連のクリーンアップ スクリプトを実行しています。

いくつかの日付変数を使用して一連のコードをパラメーター化しようとしていますが、作成テーブルをテストすると、次のエラーが表示されます。

警告: 認識されないノード タイプをダンプできませんでした: 858861618

問題の原因となったコードは次のとおりです。

エラー WARNING: could not dump unrecognized node type: 858861618 を生成せずに単純なテーブル作成スクリプトをパラメーター化するために Python を使用するにはどうすればよいですか?

0 投票する
1 に答える
680 参照

python - plpython 関数間の引数として real[] を渡す

私はPythonを初めて使用し、pl / pythonでサーバープログラミングを実行しようとしています(より高速な処理を実現するため)。何度も試みた後、このリストでリソースを探して助けを求めることにしました。

作成したタイプの vessel_speed を渡して、別の関数から pl/python 関数を呼び出したい

この方法で別の pl/python からダミー関数を呼び出そうとしています:

エラーを返す:

誰でもこれを解決する方法を知っていますか?...または代替ソリューションはありますか? どうもありがとう、フアン

0 投票する
1 に答える
476 参照

postgresql - PLPython 関数は Postgres のどこにありますか?

特定のスキーマでいくつかの関数を作成しましたが、「関数」セクションには何もありません..

次の例のような関数を作成します。

0 投票する
1 に答える
928 参照

python - postgres plpy.execute with hstore stringliteral FAIL

postgresql 9.2 を使用して plpython 関数を作成しています。hstore 文字列を返すクエリがコードで既に実行されているとします。次に、クエリを発行したいと思います。

hstore 文字列を含む文字列であるとしましょう。A=>B

として実行

戻り値

上記のコードで hstore_to_array に置き換えると、出力は次のようになります。

また、関数の代わりに hstore 演算子を使用しようとしました。これらの関数を pgsql ターミナルで試して、Python に埋め込まれていないときに機能することを確認しました。任意のポインタをいただければ幸いです。