RE: Funciones SQL

From: "Mario Soto Cordones" <marioa(dot)soto(dot)cordones(at)gmail(dot)com>
To: 'Marcelo Alejandro España Koock' <mespanak(at)gmail(dot)com>
Cc: <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: RE: Funciones SQL
Date: 2014-10-15 15:10:14
Message-ID: !&!AAAAAAAAAAAYAAAAAAAAAPma+WVXT5NGnV/8+cC15lfCgAAAEAAAANcpOqyu0HRFoeiT3X2ozD0BAAAAAA==@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Marcelo:

1.- Para retornar records, el lenguaje es plpgsql (Procedural Languaje PostgreSQL).

2.- Las variables que dicen OUT, son de Salida, las de entrada tienen IN.

3.- Los campos enunciados en la sentencia select, son los que se devolverán en las variables OUT, es por eso que el select es:

SELECT a.nombre,a.domicilio,b.telefono

Saludos

Mario Soto Cordones

De: Marcelo Alejandro España Koock [mailto:mespanak(at)gmail(dot)com]
Enviado el: miércoles, 15 de octubre de 2014 12:00
Para: Mario Soto Cordones
CC: pgsql-es-ayuda(at)postgresql(dot)org
Asunto: Re: [pgsql-es-ayuda] Funciones SQL

Mario,

Muchas gracias, lo que me envias es en leguaje plpgsql y no en lenguaje sql. Puedo pedirte solo una aclaración:

(

out _telefono varchar,

out _nombre varchar,

out _domicilio varchar

)

** Estos son parámetros de entrada o parátemros de salida ** ?

DECLARE

_my_record RECORD;

** Basta con esto para saber los registros que serán devueltos son los que indica el SELECT **?

Gracias

El 15 de octubre de 2014, 11:17, Mario Soto Cordones <marioa(dot)soto(dot)cordones(at)gmail(dot)com <mailto:marioa(dot)soto(dot)cordones(at)gmail(dot)com> > escribió:

Marcelo:

Para retornar todos los registros que te devuelva la consulta, puedes retornar un Record:

Ejemplo:

CREATE OR REPLACE FUNCTION my_funcion (

out _telefono varchar,

out _nombre varchar,

out _domicilio varchar

)

RETURNS SETOF record AS

$body$

DECLARE

_my_record RECORD;

BEGIN

RETURN QUERY SELECT a.nombre,a.domicilio,b.telefono

FROM tabla1 a

INNER JOIN tabla2 b ON a.ID = b.ID;

RETURN;

END;

$body$

LANGUAGE 'plpgsql';

Saludos cordiales

Mario Soto Cordones

De: pgsql-es-ayuda-owner(at)postgresql(dot)org <mailto:pgsql-es-ayuda-owner(at)postgresql(dot)org> [mailto:pgsql-es-ayuda-owner(at)postgresql(dot)org <mailto:pgsql-es-ayuda-owner(at)postgresql(dot)org> ] En nombre de Marcelo Alejandro España Koock
Enviado el: miércoles, 15 de octubre de 2014 10:57
Para: pgsql-es-ayuda(at)postgresql(dot)org <mailto:pgsql-es-ayuda(at)postgresql(dot)org>
Asunto: [pgsql-es-ayuda] Funciones SQL

Hola Buenos días,

Estoy creando una función SQL en postgres que incluya una instrucción SQL como la siguiente:

SELECT *

FROM tabla1 INNER JOIN tabla2 ON tabla1.ID = tabla2.ID

Tabla1 tiene campos ID, nombre, domicilio

Tabla2 tiene campos ID, teléfono

Cuando creo la función me solicita un tipo de datos para la RETURNS SETOF

¿Cómo creo ese tipo de datos si la consulta es una combinación de tablas?

--
Atentamente y agradecido de cualquier ayuda,

Marcelo España Koock
Cuenta Personal
GMAIL

--
Atentamente,

Marcelo España Koock
Cuenta Personal
GMAIL

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2014-10-15 16:10:42 Re: Funciones SQL
Previous Message Marcelo Alejandro España Koock 2014-10-15 14:59:51 Re: Funciones SQL