列名を指定した後、私はエラーを取得し、この関数を呼び出した後、このPostgreSQLのあいまいな列参照
CREATE OR REPLACE FUNCTION factors_apart_sa()
RETURNS TABLE(surf_area integer, sa_factor numeric) AS
$BODY$
BEGIN
RETURN QUERY SELECT factors_apart_sa.surf_area, factors_apart_sa.sa_factor FROM factors_apart_sa;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
COST 100
ROWS 1000;
のような機能を持っている:私が指定している場合
column reference "factors_apart_sa.surf_area" is ambiguous
はどのように来るが、それはまだ曖昧ですテーブル名ここで
は、テーブルfactors_apart_saです:
CREATE TABLE factors_apart_sa
(
factors_apar_sa_id bigserial NOT NULL,
surf_area integer,
sa_factor numeric(19,4) NOT NULL
)
がされていないため、列 'surf_area'でテーブルを返すfactors_apart_sa'関数':
は、行の機能returnigセットはFROM
句に入れ呼び出すには?関数とテーブルが同じ名前で始まるのはなぜですか? – freakishありがとう、しかし、関数の戻り値の名前を変更すると、エラーは出ませんが、結果として1つの列しか得られません。私は結果がPK列のないテーブルのクローンであることが必要です。 – KasparTr