Frage

Ich schreibe die PL/PGSQL -Funktion, die einige statistische Verarbeitung ausführt. mit 8.2 von Postgres. Ich möchte diese praktische Gesamtfunktion verwenden:

reg_slope (y, x)

Aber ich habe meine X- und Y -Daten als lokale Arrays in der PL/PGSQL -Funktion gespeichert: y doppelte Präzision []; x doppelte Präzision [];

Das Problem ist, wenn ich dies als Zeile in der PL/PGSQL -Funktion verwende:

Steigung: = reg_slope (y, x);

Ich erhalte einen Fehler, der besagt, dass die Funktion nicht verfügbar ist oder die falschen Argumente hat. Ich vermute, dass es daran liegt, dass die Eingänge als Spalten aus einer Tabelle ausgewählt werden sollen, anstatt als doppelte Präzisions -Arrays übergeben zu werden.

Gibt es eine Möglichkeit, die Funktion rON_SLOPE mit lokalen Arrays zu machen? (dh eine Möglichkeit, das Array als eine gültige Eingabe in eine Gesamtfunktion zu werfen?)

Danke.

War es hilfreich?

Lösung

SELECT regr_slope(x,y) INTO slope FROM (SELECT unnest(ARRAY[1,2,3,4]) as x, unnest(ARRAY[5,6,7,8]) AS y) AS z;
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top