2012-04-10 8 views
0

このエラーが発生したため、別名をnum_documento(codigo "a.num_documento")に設定しましたが、Postgresによるとnum_documentoは存在しません。私が選択して挿入を行うことができますPostgreSQLでは内部の参加方法selectでのinsertでの曖昧なplpgsqlクエリエラー

insert into bdsinc."codigo"(num_documento,id_tip_dcto,id_deudor) 
select distincta.num_documento,b.id_tip_dcto,b.id_deudor 
from bdsinc."carga" a 
left join bdsinc."tb_deudor" b 
on a.num_documento=b.num_dcto 
and a.id_tip_dcto=b.id_tip_dcto 
where b.id_deudor is not null and validacion=1; 

insertar_carga_giros

ERROR: la referencia a la columna �num_documento� es ambigua 
Where: PL/pgSQL function "insertar_carga_giros"   
line 145 at sentencia SQ??? 

--query機能?

+1

あなたが唯一のプレーンなSQLを示しています。完全なplpgsql関数はどこですか?エラーは、関数のヘッダーに関連している可能性が最も高いです。あなたのバージョンのPostgreSQLもありません。 –

+0

これはあなたのステートメントでは本当に "select distincta.num_documento"ですか、それともtypo/copy-and-paste-oですか? –

答えて

2

このINSERTのステートメントは正常です。おそらく、関数内に列名と競合する変数名num_documentoを定義しました。たぶんINパラメータですか?
その変数の名前を変更してください。

あなたが実際に持っていると仮定すると:

select distinct a.num_documento,b.id_tip_dcto,b.id_deud; 
+0

まあ、それは悪いコピーパスタでした、私はすでに問題を解決しました、ありがとう! – Isxida