2016-12-15 10:40 GMT+13:00 Adrian Klaver <adrian.kla...@aklaver.com>:

> On 12/14/2016 01:30 PM, Patrick B wrote:
>
>>         1. Why when I run the function manually I get this error?
>>
>>                 select logextract(201612015, 201612015);
>>
>>                 ERROR:  operator does not exist: timestamp without time
>>         zone >=
>>                 integer
>>
>>                 LINE 13:                 BETWEEN
>>
>>
>>     The answer is above. Look at your original query at the top of the
>> post.
>>
>>
>>
>>          I presume this is wrong: _CREATE or REPLACE FUNCTION
>>         logextract(date_start integer, date_end integer) _- But what
>>         should I
>>         use instead?
>>
>>
>>         <mailto:adrian.kla...@aklaver.com>
>>
>>
>> You mean the error would be:
>> select logextract(201612015, 201612015);
>>
>> When it was supposed to be: select logextract(201611015, 201612015);???
>>
>> This is not the cause, because it was a mistake when I typed the email.
>> Even doing:
>>
>> select logextract(20161115,20161215);
>>
>>
>> I get same error.
>>
>
> You would. The error is:
>
> ERROR:  operator does not exist: timestamp without time zone >= integer
>
> Change this:
>
>
>     BETWEEN
>
>                  ' || date_start || '
>
>               AND
>
>                   ' || date_end || '
>
> to
>
>     BETWEEN
>
>        date_start::text
>
>     AND
>
>        date_end::text
>
> Or change the argument types to text and then:
>
> BETWEEN
>
>        date_start
>
>     AND
>
>        date_end
>
> In either case you will have your original query.
>
> --
> Adrian Klaver
> adrian.kla...@aklaver.com



I tried either changing the argument types:

logextract(date_start text, date_end text)


and also the Between:

 BETWEEN


       date_start::text


    AND


       date_end::text


None of those worked:

ERROR:  function logextract(integer, integer) does not exist

LINE 1: select logextract(20160901,20161001);

Reply via email to