Amigos como estan, queria ver si me pueden ayudar tengo una tabla como esta
bunches(buncod---bunvarcod---fecha_ingreso---codigo_largo-- etc
etc)A001---FN---13-11-2015--0---A002---FN---13-11-2015--0---A003---FN---12-11-2015--0---A004---FN---12-11-2015--0---A005---FN---12-11-2015--0---A006---FN---11
ista Programador &&
DBAFreeLancer MVC
Date: Tue, 18 Mar 2014 23:03:48 +0100
Subject: Re: [pgsql-es-ayuda] Crosstab
From: jtorlis...@gmail.com
To: pedr...@outlook.com
¡Madre mía! Lo que dices me suena... como a chino... es que yo no tengo un
nivel demasiado allá de postgres... ¿podrías pon
Hola, Pedro:
Voy a probar a añadir un parámetro a la función, por ejemplo as_view que sea un
booleano que, mediante un if..., si está a true la función haga un create view
en lugar del create table que está al final de la función (linea 232 del código
fuente)
No sé si funcionaría y te serviría.
Hola Jorge, gracias por el aporte me es de gran utilidad, hay un detalle ... la
funcion pivotmytable la he colocado en un trigger, el problema es que la tabla
resultante (generada por la funcion pivotmytable) la uso en una vista
Como puedo hacer para que la función vacíe la tabla en el caso
Hola, Pedro,
pues directamente creo que no, aunque hay soluciones por ahí. Yo, hace
tiempo, posteé en la lista una solución mía. Lo malo/bueno es que
necesita de plpython instalado para funcionar, y bajo mi punto de vista
(yo uso postgresql como una suerte de access bien hecho, es decir,
serv
Buen día lista, ¿ hay alguna función crosstab en donde no tenga que especificar
la estructura del record retornado?
es decir SELECT * FROM crosstab('...') AS (id integer, .etc)
Gracias.
Bach. Ing. de Sistemas Pedro Ricardo Pejerrey
Gómez---
Excerpts from Arturo Garcia's message of lun abr 11 17:12:51 -0300 2011:
> Cuando no existe información en alguno de los meses, la debería mostrar en
> cero, como se muestra en el ejemplo anterior.
Para lograr eso puedes hacer un join con generate_series(1, 12).
--
Álvaro Herrera
-
Enviado a
Estimados compañeros, ojalá me puedan apoyar con éste problema que tengo.
Tengo una tabla en donde llevo los importes acumulados de varios trabajadores,
esta es la estructura de la tabla:
CREATE TABLE sis.acumes
(
aa smallint NOT NULL, -- Año de acumulación.
mes smallint NOT NULL, -- Mes
Adriana,
Como toda funcion que retorna un set de registros al vuelo, no es posible
dinamizar esto que necesitas.
El tema pasa porque en tiempo de ejecucion de la funcion no podes saber
los tipos de datos de antemano.
Pasa lo mismo cuando escribis una funcion que retorna un setof record.
Pensa por
Adriana,
Como toda funcion que retorna un set de registros al vuelo, no es posible
dinamizar esto que necesitas.
El tema pasa porque en tiempo de ejecucion de la funcion no podes saber
los tipos de datos de antemano.
Pasa lo mismo cuando escribis una funcion que retorna un setof record.
Pensa por
Hola Lista:
Quiero saber si alguien utilizo la funcion crosstab , porque tengo una
inquietud.
Yo utilizo la funcion para invertir las columnas del resultado de un
query, hasta ahi no tengo problemas, pero para ello debo definir las
columnas previamente, el tema es que de esa manera ante un cambio e
*---*
> Date: Thu, 8 Jul 2010 08:05:52 -0600
> From: juanrami...@cajazacate.com.sv
> To: pgsql-es-ayuda@postgresql.org
> Subject: Re: [pgsql-es-ayuda] crosstab: ERROR: invalid return type
>
> glana escribió:
> > Hola a todos
> >
> > A
Excerpts from juanramirez's message of jue jul 08 10:05:52 -0400 2010:
> je je je, a mi me paso lo mismo pero no haye como hacerlo... esperaba
> algo implementado en la version 9.0, pero no lo he visto en ningún lado,
> creo que tendremos que esperar y lidiar con trabajo duro mientras
> mejoran
glana escribió:
Hola a todos
A mi me pasa lo mismo, intento que el numero y nombre de las columnas
sea algo dinámico, pero no hay forma.
Alguien sabe como conseguirlo???
Vamos, lo que queremos, creo, es algo igual al PIVOT de access.
Saludos
je je je, a mi me paso lo mismo pero no haye com
Hola a todos
A mi me pasa lo mismo, intento que el numero y nombre de las columnas
sea algo dinámico, pero no hay forma.
Alguien sabe como conseguirlo???
Vamos, lo que queremos, creo, es algo igual al PIVOT de access.
Saludos
El 02/07/10 17:06, Cesar A escribió:
Claro, pero esos títulos puede
Excelente Alvaro. Gracias
El 3 de julio de 2010 12:19, Alvaro Herrera
escribió:
> Excerpts from Cesar A's message of jue jul 01 23:33:30 -0400 2010:
> > Creo entender que al definir el campo como, por ejemplo, "estado" text le
> > estoy diciendo que lo "convierta" a text, de hecho, el count creo
Excerpts from Cesar A's message of jue jul 01 23:33:30 -0400 2010:
> Creo entender que al definir el campo como, por ejemplo, "estado" text le
> estoy diciendo que lo "convierta" a text, de hecho, el count creo que
> devuelve numeric... cierto?
>
> Sin embargo, probando, porque en efecto los 2 pri
Claro, pero esos títulos pueden no ser siempre los mismos, o la misma
cantidad... de ahí el cuento
El 2 de julio de 2010 09:46, Julio Cesar Rodriguez Dominguez <
jura...@gmail.com> escribió:
>
>
> El 2 de julio de 2010 09:07, Cesar A escribió:
>
> Bueno... luego de revisar y hacer varias pruebas
El 2 de julio de 2010 09:07, Cesar A escribió:
> Bueno... luego de revisar y hacer varias pruebas, algo me salió.
>
> Revisando el último ejemplo de la doc[0], hice mi prueba:
>
> SELECT * FROM public.crosstab
> (
> 'SELECT est_002, agri02_002, count(*)::numeric FROM consulta_agri04
> GROUP B
Bueno... luego de revisar y hacer varias pruebas, algo me salió.
Revisando el último ejemplo de la doc[0], hice mi prueba:
SELECT * FROM public.crosstab
(
'SELECT est_002, agri02_002, count(*)::numeric FROM consulta_agri04
GROUP BY agri02_002, est_002 ORDER BY est_002, agri02_002',
'SELEC
Cesar, te paso un ejemplo mio, que funciona perfectamente.. podrias hacer
algo parecido...
Espero te sirva...
El 2 de julio de 2010 07:29, Diego Ayala escribió:
>
>
> El 1 de julio de 2010 23:34, Cesar A escribió:
>
> así da un error de sintaxis
>>
>> El 2 de julio de 2010 13:26, Gilberto Casti
El 1 de julio de 2010 23:34, Cesar A escribió:
> así da un error de sintaxis
>
> El 2 de julio de 2010 13:26, Gilberto Castillo Martínez <
> gilberto.casti...@etecsa.cu> escribió:
>
>>
>>
>> El jue, 01-07-2010 a las 13:04 -0430, Cesar A escribió:
>>
>> > No, nada.
>> >
>> >
>> > Por si hay dudas
así da un error de sintaxis
El 2 de julio de 2010 13:26, Gilberto Castillo Martínez <
gilberto.casti...@etecsa.cu> escribió:
>
>
> El jue, 01-07-2010 a las 13:04 -0430, Cesar A escribió:
> > No, nada.
> >
> >
> > Por si hay dudas con el resultado deseado:
> >
> >
> > est_002 |CACAO |CAF
Creo entender que al definir el campo como, por ejemplo, "estado" text le
estoy diciendo que lo "convierta" a text, de hecho, el count creo que
devuelve numeric... cierto?
Sin embargo, probando, porque en efecto los 2 primeros campos son varchar:
SELECT * FROM public.crosstab('SELECT est_002, agr
Excerpts from Cesar A's message of jue jul 01 12:39:07 -0400 2010:
> SELECT est_002, agri02_002, count(*) FROM consulta_agri04 GROUP BY
> agri02_002, est_002 ORDER BY est_002, agri02_002; est_002 |
> Con crosstab:
>
> SELECT * FROM public.crosstab('SELECT est_002, agri02_002, count(*) FROM
> co
No, nada.
Por si hay dudas con el resultado deseado:
est_002 |CACAO |CAFE |CAÑA
Mérida|83 |169 |68
Táchira |12 |29 |1
Trujillo| |26 |20
Y las demás columnas, correspondientes a cada renglón...
El 1 de julio de 2010 12:32, Diego Ayala escribió:
> Entiendo, podrias proba
Entiendo, podrias probar sin ponerle las comillas doblesa la definiciones de
los parametros
AS lista(estado text, renglon text, cantidad text);
El 1 de julio de 2010 12:49, Cesar A escribió:
> Hola Diego.
>
> Nop, lo uno, ni lo otro:
>
> SELECT * FROM public.crosstab('SELECT est_002, agri02_00
Hola Diego.
Nop, lo uno, ni lo otro:
SELECT * FROM public.crosstab('SELECT est_002, agri02_002, count(*)::text
FROM consulta_agri04 GROUP BY agri02_002, est_002 ORDER BY est_002,
agri02_002') AS lista("estado" text, "renglon" text, "cantidad" text);
ERROR: invalid return type
DETAIL: SQL rowid
deberias castear el count(*), ya que en la ultima parte estas definiendo
cantidad de tipo text, puedes hacer count(*)::text, y deberia de funcionar..
El 1 de julio de 2010 12:39, Cesar A escribió:
> Saludos
>
> Disculpen ustedes, pero no doy pie con bola en una consulta a crosstab:
>
> Normalita
Saludos
Disculpen ustedes, pero no doy pie con bola en una consulta a crosstab:
Normalita:
SELECT est_002, agri02_002, count(*) FROM consulta_agri04 GROUP BY
agri02_002, est_002 ORDER BY est_002, agri02_002; est_002 |
agri02_002 | count
--++---
Mérida
30 matches
Mail list logo