Re: Syntax Error for "boolean('value')" Type Casting - Mailing list pgsql-general

From David Johnston
Subject Re: Syntax Error for "boolean('value')" Type Casting
Date
Msg-id B298213B-5F05-457B-9C91-4BB5CFC63A8E@yahoo.com
Whole thread Raw
In response to Re: Syntax Error for "boolean('value')" Type Casting  (Alban Hertroys <dalroi@solfertje.student.utwente.nl>)
List pgsql-general

On May 22, 2011, at 6:22, Alban Hertroys <dalroi@solfertje.student.utwente.nl> wrote:

> On 21 May 2011, at 21:17, David Johnston wrote:
>
>> SELECT boolean('true')
>>
>>>> SQL Error: ERROR:  syntax error at or near "("
>>>> LINE 1: SELECT boolean('true')
>>>>                    ^
>>
>> The following work as expected:
>>
>> SELECT bool('true')
>
> (...)
>
>> While I'm here.is there any downside to using the "type(value)" form of
>> casting versus other forms?
>
> You're comparing apples and oranges here, you're not using a cast at all in fact.
>
> Instead, you're calling the transformation function that's used by the cast. It just happens to be called the same as
thetype in some cases, which is why boolean(value) doesn't work. 
>
> Now calling such functions will probably work just the same as the cast in most cases, but there will be some
discrepancies,as follows from reading: http://www.postgresql.org/docs/9.0/interactive/sql-createcast.html 
>
> Alban Hertroys
>
>

I did end up finding the notes on the how's and caveats of using the direct method version for casting.  I also tried
"boolean"and indeed got the "function not found" error.  All that said, it seems that one could add the Boolean
function,even if it just calls bool, to get consistent behavior. 

Doesn't matter to me at this point since I've decided to use the SQL conforming syntax of CAST(v as type).

Thank you the response though

David J.




pgsql-general by date:

Previous
From: Stefan Keller
Date:
Subject: Re: Values larger than 1/3 of a buffer page cannot be indexed (hstore)
Next
From: Wei
Date:
Subject: repost: unable to install PG