deberías hacer una función que retorne un setofrecord y la llamas con un select * from funcion
El 6 de abril de 2016, 10:59, Gerardo Herzig <gher...@fmed.uba.ar> escribió: > Hasta donde se, no existen las vistas parametrizadas. > Supongo que una funcion seria lo mas cercano. > > HTH > Gerardo > > ----- Mensaje original ----- > > De: "Virginia" <mavi...@gmail.com> > > Para: "Ayuda" <pgsql-es-ayuda@postgresql.org> > > Enviados: Miércoles, 6 de Abril 2016 12:03:23 > > Asunto: [pgsql-es-ayuda] Vista con pase de parámetros > > > > > > Buen día, > > > > Quisiera saber si me pueden orientar acerca de vistas con pase de > > parámetros, éstas funcionan en postgresql? Si es así, cómo se hacen? > > pueden orientarme? > > Lo que necesito es pasar ésta consulta de php: > > > > SELECT distinct (e.empid), e.empresa, nt.fecha_vencimiento, (SELECT > > cp2_notas_tareas.no_renovacion FROM cp2_notas_tareas WHERE > > cp2_notas_tareas.tipo = 861 AND cp2_notas_tareas.tarea_id = (SELECT > > max(tareas.notareas_id) FROM cp2_notas_tareas tareas where > > tareas.empid = e.empid AND to_char(DATE(tareas.fecha_vencimiento) > > ,'yyyy-mm') = 'PARAMETRO1 TIPO ANHO-MES' AND tareas.categorias_nt_id > > = 8 AND tareas.tipo = 860 )) as renovo, (SELECT mc.descripcion FROM > > cp2_motivos_categorias mc, cp2_notas_tareas aux WHERE mc.valor = > > aux.no_renovacion AND aux.tarea_id = (SELECT max(tareas.notareas_id) > > FROM cp2_notas_tareas tareas where tareas.empid = e.empid AND > > to_char(DATE(tareas.fecha_vencimiento) ,'yyyy-mm') = 'PARAMETRO1 > > TIPO ANHO-MES' AND tareas.categorias_nt_id = 8 AND tareas.tipo = 860 > > ) limit 1) as motivo, (SELECT cp2_notas_tareas.descripcion FROM > > cp2_notas_tareas WHERE cp2_notas_tareas.tipo = 861 AND > > cp2_notas_tareas.tarea_id = (SELECT max(tareas.notareas_id) FROM > > cp2_notas_tareas tareas where tareas.empid = e.empid AND > > to_char(DATE(tareas.fecha_vencimiento) ,'yyyy-mm') = 'PARAMETRO1 > > TIPO ANHO-MES' AND tareas.categorias_nt_id = 8 AND tareas.tipo = 860 > > )) as observacion, (SELECT cp2_notas_tareas.notareas_id FROM > > cp2_notas_tareas WHERE cp2_notas_tareas.tipo = 861 AND > > cp2_notas_tareas.tarea_id = (SELECT max(tareas.notareas_id) FROM > > cp2_notas_tareas tareas where tareas.empid = e.empid AND > > to_char(DATE(tareas.fecha_vencimiento) ,'yyyy-mm') = 'PARAMETRO1 > > TIPO ANHO-MES' AND tareas.categorias_nt_id = 8 AND tareas.tipo = 860 > > )) as ntid FROM empresas e INNER JOIN cp2_notas_tareas nt ON > > (nt.empid = e.empid) LEFT JOIN pagos_empresas pe ON (e.empid = > > pe.empid) INNER JOIN paquetes pq ON (pe.paqid = pq.paqid) WHERE > > nt.categorias_nt_id = 8 AND pe.pagid = (SELECT pagid FROM > > pagos_empresas INNER JOIN paquetes ON (pagos_empresas.paqid = > > paquetes.paqid) WHERE pagos_empresas.empid = e.empid AND nt.tipo = > > 860 AND nt.notareas_id = (SELECT max(tareas.notareas_id) FROM > > cp2_notas_tareas tareas where tareas.empid = e.empid AND > > to_char(DATE(tareas.fecha_vencimiento) ,'yyyy-mm') = 'PARAMETRO1 > > TIPO ANHO-MES' AND tareas.categorias_nt_id = 8 AND tareas.tipo = 860 > > ) ORDER BY pagos_empresas.pagid DESC LIMIT 1) AND > > to_char(DATE(nt.fecha_vencimiento) ,'yyyy-mm') = 'PARAMETRO1 TIPO > > ANHO-MES' ORDER BY nt.fecha_vencimiento, e.empresa ASC > > > > > > A una vista pero no sé cómo hacer el pase del PARAMETRO1 TIPO > > ANHO-MES > > > > Gracias por su ayuda. > > > > - > Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org > ) > Para cambiar tu suscripción: > http://www.postgresql.org/mailpref/pgsql-es-ayuda > -- Ing. Jorge A. González V. Especialista de Base de Datos Gerencia de Tecnología Oficina (Máster): +58 (251) 232 16 34 Oficina (Directo): +58 (251) 250 43 99 *Móvil: *+584261534450 Fax: +58 (251) 231 77 64