Anthony, debí leer antes los enlaces que me pasaste.

Me quedo claro.

Gracias por tu apoyo.

Saludos.

El mié., 7 sept. 2016 a las 21:46, Herman Estaban (<hermanesta...@gmail.com>)
escribió:

> Gracias por responder Anthony, voy a leer la documentación.
>
> Modifique, el parametro:
>
> IN ar_fec_cont    char(10)
>
> Y modifique en el WHERE:
>
> AND to_char(public.contratos.fec_cont, 'dd/mm/yyyy') = ar_fec_cont
>
> No me presenta ningún error.
>
> Pero mi pregunta es, esto es una buena practica?
>
> Saludos.
>
> El mié., 7 sept. 2016 a las 21:22, Anthony Sotolongo (<
> asotolo...@gmail.com>) escribió:
>
>> Hola Herman, si te dice el error que no existe la función, es porque no
>> existe una función to_date que se le pase un timestamp, según la
>> documentación(
>> https://www.postgresql.org/docs/9.5/static/functions-formatting.html)
>> existe una función to_date(text, text) y si el parámetro es
>> timestamp y el campo de la tabla también, compáralos y ya, no hay que
>> convertirlos, pero si quieres dejarlos en formato de fecha castealos y ya 
>> ar_fec_cont
>> ::date , y si por casualidad quieres algo más  de detalle puede que la
>> función date_trunc te pueda ayudar (
>> https://www.postgresql.org/docs/9.5/static/functions-datetime.html#FUNCTIONS-DATETIME-TRUNC
>> )
>>
>> Saludos
>>
>> On 07/09/16 23:00, Herman Estaban wrote:
>>
>> Hola estimados estoy creando una función con los siguientes parametros:
>>
>> CREATE OR REPLACE FUNCTION public.f_listado_contratos
>> (
>>   IN  ar_id_pers     integer,
>>   IN  ar_fec_cont    timestamp
>> )
>>
>> En el WHERE coloco esto:
>>
>> WHERE public.contratos.id_pers = ar_id_pers
>> AND to_date(public.contratos.fec_cont , 'dd/mm/yyyy') = ar_fec_cont
>>
>> Y se presenta el siguiente mensaje de error:
>>
>> SQL Error: ERROR:  no existe la función to_date(
>> LINE 109:      AND TO_DATE(public.contratos.fec_cont, 'dd/mm/yyyy') =
>>
>> El campo de la tabla y el parametro son de tipo timestamp.
>>
>> Gracias por su atención.
>>
>> Saludos.
>>
>>
>>
>>

Responder a