1
Ich bin verwirrt über die Weitergabe Prozess des Parameters von Funktionen in Postgres erstellt:postgresql Funktion gibt mehrere Spalten
create type IncorrectRecord as (pattern_number integer, uoc_number integer);
create or replace function text1(pattern text, uoc_threshold integer)
returns setof IncorrectRecord
as $$
begin
return next count(v1.code) as pattern_number, count(v2.code) as uoc_number
from (select * from q1_1 where code like pattern) as v1, (select
* from q1_1 where code like pattern and uoc > uoc_threshold) as v2;
return;
end
$$ language plpgsql;
ich einige geändert haben, gibt es keine Fehler Parameter, aber es funktioniert immer noch nicht. , wenn ich es getestet mit
select *
from test1('ECO%', 8)
error: function returns two columns.
Gibt es irgend etwas falsch mit der Art? Wie kann ich es reparieren?.
'gibt IncorrectRecord' zurück - Was ist' IncorrectRecord'? –
Wenn Sie das Wertepaar abrufen möchten, wobei die erste Zahl die Zahl "Code wie Muster" und die zweite die Zählung ist, bei der "Code wie Muster und Uoc> Uoc_Threshold" verwendet wird, verwenden Sie die falsche Methode. Beantworten Sie Ihre Frage kurz, es ist unmöglich, Parameter in DDLs zu verwenden. – Abelisto
Ist das eine Art Hausaufgabe? Sieht furchtbar ähnlich aus: http://stackoverflow.com/questions/43735008/postgresql-functions –