HOla si vas utilizar un arreglo debe ser algo como esto:
declare
resultado INTEGER[];
begin
-- Este es el query que quiero que sea una variable, en este caso un
arreglo
SELECT DISTINCT catalog_id into resultado FROM sales
WHERE sellout_date BETWEEN date_sellout - '360
days'::interval AND date_sellout
/*
Lo que quiero es, que el subquery que se repite sea una
variable para no tener que repetirlo
*/
-- Esta la tabla de venta a precio de costo
INSERT INTO sales_cost
(retailer_id,catalog_id,sellout_date,sales_avg_360)
(
SELECT retailer_id,catalog_id,
date_sellout,SUM(sellout_cost)/360
FROM sales
WHERE retailer_id = retailer
AND catalog_id IN ( select unnest (resultado)-- aqui le hago
un unnest al arreglo
)
saludos
On 05/07/17 13:33, Hibiki wrote:
Y no lo puedes hacer?, prueba a ver declarando un array de integer mas
menos …
DECALRE
Result INTEGER[];
SELECT DISTINCT catalog_id INTO *Result* FROM sales
WHERE sellout_date BETWEEN date_sellout - '360
days'::interval AND date_sellout
No lo he probado pero creo que debe dar resultado.
Ing. Nivaildo Polanco Martínez
Director Ejecutivo de ACM-ICPC-UIJ
Email: casa: hib...@nauta.cu <mailto:hib...@nauta.cu>, trabajo:
npola...@cuij.edu.cu <mailto:npola...@cuij.edu.cu>
Dpto: (46) 352337
FCT: (46) 323567
*De:*pgsql-es-ayuda-ow...@postgresql.org
[mailto:pgsql-es-ayuda-ow...@postgresql.org] *En nombre de *oscar arocha
*Enviado el:* miércoles, 5 de julio de 2017 13:09
*Para:* pgsql-es-ayuda@postgresql.org
*Asunto:* [pgsql-es-ayuda] Subquery en variable
Saludos, les adjunto un query a ver si me pueden ayudar con lo
siguiente, dentro del SP, tengo un subquery que repito para filtrar un
query mas grande, sin embargo uso ese query en otras partes del SP y
lo que quiero es no tener que ejecutarlo mas de una vez.
Gracias
--
*Ing. Oscar Arocha*
Linux User: 556027
tlf: +56990301921
twitter: @ArochaOscar
Evento Universidad 2018. Conozca todos los detalles en
http://universidad2018.uij.edu.cu