sql >> Database teknologi >  >> RDS >> PostgreSQL

Sådan returneres temp tabel resultat i postgresql funktion

Inde i din main_function():

RETURN QUERY SELECT * FROM temp_t;

...hvis temp_t tabel består af f.eks. kolonne1 (type heltal), kolonne2 (boolesk) og kolonne3 (varchar(100)), skal du også definere returneret type som:

CREATE OR REPLACE FUNCTION main_function(column1 OUT integer, column2 OUT boolean, column3 OUT varchar(100)) RETURNS SETOF record AS
(...)

En anden måde er at definere ny datatype:

CREATE TYPE temp_t_type AS (
    column1 integer,
    column2 boolean,
    column3 varchar(100)
);

Denne type kan returneres af dine funktioner på samme måde som normale datatyper:

CREATE OR REPLACE FUNCTION main_function() RETURNS SETOF temp_t_type AS
(...)

...og returner resultatet fra funktionen på samme måde som nævnt ovenfor.



  1. Dynamisk længde på talformat i to_number Oracle SQL

  2. Sådan beregnes flere glidende gennemsnit i MySQL

  3. Er der nogen publicerede retningslinjer for kodningsstil for SQL?

  4. MySQL - SQLite Hvordan forbedrer man denne meget enkle forespørgsel?