Ich erstellte eine Funktion mit create function xxx(id uuid) returns void as $$
. Nun möchte ich es mit select xxx(select id from mytable where ...);
nennen, aber das funktioniert nicht. Wie kann ich es tun?PostgreSQL: Rufen Sie eine psql-Funktion mit der Rückkehr eines Select als Parameter
Antwort
arbeiten einfach auf die ID und die Quelle verlassen außerhalb des Funktionsaufrufs:
select xxx(id)
from mytable where ...;
Update für das downvoter: siehe es in Aktion here
Sie nicht Unterabfrage als Argument übergeben können. Eine Möglichkeit ist LATERAL JOIN
zu verwenden:
SELECT xxx(s.id)
FROM table t1
LEFT JOIN LATERAL (select id from mytable where ... order by ... limit 1) s
ON true;
Dies nützlich ist, wenn Sie brauchen eine gewisse Korrelation zwischen Haupttabelle und Unterabfrage zu tun.
Wenn nur ein Wert:
SELECT xxx(s.id)
FROM (subquery) s;
oder unten beantworten.
Ich habe LATERAL nicht gewusst, das ist interessant. Kannst du mir sagen, was die 'table t1' ist und warum' ON true' benötigt wird? – Fla
@Fla Ich habe gedacht, dass Sie eine Art von correlated Unterabfrage benötigen. – lad2025
In Ordnung, so dass es möglich ist, darauf zu loopen. Aber meine Unterabfrage ist verdammt einfach, also funktioniert die Antwort unten oO. Ich dachte wirklich, dass die Auswahl zuerst gemacht werden musste, mein Schlechter. Trotzdem danke. – Fla
- 1. So rufen Sie eine Funktion, PostgreSQL
- 2. Python: Rufen Sie eine Funktion mit Parameter von Eingang
- 3. C# So rufen Sie mit mehr als einem Parameter auf
- 4. Pass Spaltenname als Parameter PostgreSQL mit psycopg2
- 5. Binding-Parameter als PostgreSQL-Array
- 6. Rufen Sie eine Funktion/Funktor mit Parametern mehr als Argumente
- 7. (PHP/Postgresql) Rufen Sie eine Funktion auf, die void zurückgibt?
- 8. PostgreSQL CTE Datensätze als Parameter zur Funktion
- 9. POSTGRESQL - Fehler bei der Rückkehr Auswahlabfrage
- 10. Senden Array als Parameter in Postgresql
- 11. Rufen Sie eine JavaScript-Funktion mit Parameter auf Knopfdruck
- 12. So rufen Sie eine Methode mit Attributen Parameter
- 13. So rufen Sie mit Reflektion eine Java-Funktion mit Methodenreferenz als Parameter auf
- 14. PostgreSQL Verwenden Sie einen Wert aus einer Select-Anweisung als eine Variable innerhalb der gleichen Anweisung
- 15. Rufen Sie eine andere Anwendung durch Parameter mit Qt
- 16. Rufen Sie eine Google App Maker App mit einem Parameter
- 17. Postgresql gespeicherte Prozedur Rückkehr Auswahlergebnismenge
- 18. POSTGRESQL - FUNCTION SELECT + UPDATE
- 19. Rufen Sie eine anonyme Funktion mit einer lokalen Variablen als Parameter
- 20. Mit SELECT als Spalte
- 21. So rufen Sie einen Parameter in eine js von Servlet
- 22. Postgresql: Abfrage Rückkehr falsche Daten
- 23. Machen PostgreSQL die Reihenfolge der eingegebenen Parameter?
- 24. jqGrid, rufen URL mit Parametern für Json Rückkehr
- 25. Javascript: Wie rufen Sie eine Funktion auf, die Parameter hat
- 26. Pass Session-Variablen als Parameter in eine SELECT-Abfrage
- 27. PostgreSQL - CTE Upsert geänderten Zeilen Rückkehr
- 28. SELECT mittleren Teil eines String, wenn es existiert. Postgresql
- 29. eine Funktion als Parameter
- 30. Rückgabe eines anderen Typs als der Parameter
Syntaxfehler in der Nähe der zweiten Auswahl. – Fla