3
私はMSSQLからpostgreSQLに移行していますが、手続き型プログラミングの構文を試しています。考え方は、テーブルを入力/パラメータとして取る関数を作成し、この入力テーブルに対して一連のSELECT
文を実行することです(テンポラリテーブルなし、SELECT
文はCTEで実行されます)。RETURN
最終テーブル。テーブルをpostgreSQL関数に渡し、select文を実行してテーブルを返す
入力テーブルは非常に簡単になります:
Col_1 Col_2 Col_3
----------------------------
2 5 12
私は数を計算するために入力テーブルの各フィールドを使用する(この例では、Col_1
、Col_2
、及びCol_3
を加算する)、追加入力テーブルにそれ、そのように表示される出力テーブルを作成:
Col 1 Col_2 Col_3 Col_4
---------------------------------------
2 5 12 19
コードでの私の試み:
CREATE OR REPLACE FUNCTION summing_function(input_table)
RETURNS output_table(Col_1 INT, Col_2 INT, Col_3 INT, Col_4 INT) AS
$$
SELECT
i.*
, i."Col_1" + i."Col_2" + i."Col_3" as sum
INTO output_table
FROM input_table i
$$
LANGUAGE SQL;
もちろん、ドル相場の間のすべてが不完全/間違っています。ドルの引用符間のピースの正しいpostgreSQLの構文は何ですか?
があなたの代わりに使用したいものを眺めませんか? (この質問は、ビューを使うべきではありませんが、ここから実際にビューを使用することができない理由を理解するための質問です) –
ビューは非常に良い解決策になります。私は、一般的なpostgreSQLの構文と制約についていくつか解明しようとしていました。 –