From: | "jvenegasperu (dot)" <jvenegasperu(at)gmail(dot)com> |
---|---|
To: | Ruben Fitó <r(dot)fito(at)ubiquat(dot)com> |
Cc: | "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: Consula por periodos actuales |
Date: | 2014-06-13 12:40:44 |
Message-ID: | CA+KjtGfhpOg_b5mtx6xygn2b3so7kZs9ceStmTBgwrx3FFgDTg@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Hola Ruben buenos dias
para esos casos puedes usar interval
select current_date, current_date - interval '10 day' as hace_10_dias;
select current_date, current_date - interval '15 day' as hace_15_dias;
http://www.postgresql.org/docs/9.3/static/functions-datetime.html
saludos
El 13 de junio de 2014, 7:10, Ruben Fitó <r(dot)fito(at)ubiquat(dot)com> escribió:
> Hola,
>
> me gustaría saber si existe alguna función en postgres que me permita
> buscar por diferentes "períodos" de mes, sin necesidad de hacer cálculos de
> periodos.
>
> Me explico, tenemos clientes que facturan cada mes, cada semana o cada 10
> días(por mes), o sea que mensualmente:
>
> Cliente 1(por mes) se facturaran la compras realizadas des de el 1 hasta
> final de mes.
> Cliente 2(por quincenas) se le facturaran las compras del 1 al 15 y del 15
> hasta final de mes.
> Cliente 3(cada 10 días) se le facturaran las compras del 1 al 10, del 11
> al 20 y del 21 a final de mes.
>
> Del mismo modo hay necesidad de hacer los cálculos de consumo por período
> en tiempo de ejecución, o sea, cuánto ha consumido hasta "ahora", en su
> periodo de facturación actual(mensual, quincenal o cada 10 días).
>
> Actualmente ahora tenemos en una función de bbdd los cálculos necesarios
> para determinar las fechas del periodo de facturación actual, pero hay
> necesidad de aplicar otro tipo de periodos(*semanalmente*, por ejemplo)
> en otros ámbitos y nos gustaría saber si existe alguna función en postgres
> que me permita distribuir los meses por diferentes periodos.
>
> Un ejemplo de lo que digo seria:
>
> SELECT sum(importe) FROM ventas WHERE cliente=12345 AND fecha_venta
> BETWEEN *inicio_periodo('X dias')* AND now();
>
>
> *incio_periodo* seria la función postgres donde le paso los días de
> duración del periodo, o también podría pasar una fracción del mes. No sé
> algo así.
>
> Una manera que he encontrado para hacerlo seria buscar las ventas del mes
> actual o de la semana actual.
>
> SELECT sum(importe) FROM ventas WHERE cliente=12345 fecha_venta BETWEEN
> (SELECT date_trunc('*MONTH*',now())::DATE) AND now(); --> para el mes
> actual.
> SELECT sum(importe) FROM ventas WHERE cliente=12345 fecha_venta BETWEEN
> (SELECT date_trunc('*WEEK*',now())::DATE) AND now(); --> para la semana
> actual.
> ?? --> Para la quincena actual
> ?? --> Para "decena" actual
>
> El problema está en que no puedo filtrar 'cada 10 dias' o 'cada quinzena'
> en esta consulta.
>
> Como lo veis, hay algo que pueda ayudarme??
>
>
> Muchas gracias de antemano.
>
> Saludos
>
>
> --
> *Ruben Fitó *
> Software Engineer
> [image: Ubiquat Technologies, SL] r(dot)fito(at)ubiquat(dot)com
> <j(dot)catarineu(at)ubiquat(dot)com>
> www.ubiquat.com
> Tota la informació continguda en aquest document i arxius adjunts és
> CONFIDENCIAL protegida per llei de secret comercial. Si l'ha rebut per
> error, si us plau elimini'l i posi's en contacte amb l'emissor.
>
> All information contained in this document and any attachments are
> CONFIDENTIAL and protected under trade secret laws. If you receive this
> message by mistake, please delete it and notify it immediately to the
> sender.
>
--
José Mercedes Venegas Acevedo
cel: Mov. 949808846
mails: jvenegasperu(at)php(dot)net
jvenegasperu(at)gmail(dot)com
PHP Spanish Docs translator member.
http://www.php.net/manual/es/index.php
From | Date | Subject | |
---|---|---|---|
Next Message | Ruben Fitó | 2014-06-13 13:01:24 | Re: Consula por periodos actuales |
Previous Message | Ruben Fitó | 2014-06-13 12:10:32 | Consula por periodos actuales |