Re: Inconsistent behavior with unnamed columns - Mailing list pgsql-general

From Tom Lane
Subject Re: Inconsistent behavior with unnamed columns
Date
Msg-id 43044.1380576812@sss.pgh.pa.us
Whole thread Raw
In response to Re: Inconsistent behavior with unnamed columns  (David Johnston <polobo@yahoo.com>)
List pgsql-general
David Johnston <polobo@yahoo.com> writes:
> Moshe Jacobson wrote
>> Why does bool get special treatment?
>>
>> postgres# select 'abc', 1, false;
>> ?column? | ?column? | bool
>> ----------+----------+------
>> abc      |        1 | f
>> (1 row)

> It doesn't (at least not as I see things in my client/version - noted
> below):

> *SELECT 'abc'::text;*

> If the type is known the type is used for the column header but since 'abc'
> and 1 do not have types this does not work.

A look into gram.y shows that "false" is parsed as 'f'::bool, so the
default column header name comes from that cast.  See also FigureColname()
in parser/parse_target.c, which embodies the heuristics for choosing a
default column name for an expression.

            regards, tom lane


pgsql-general by date:

Previous
From: David Johnston
Date:
Subject: Re: Inconsistent behavior with unnamed columns
Next
From: Ken Tanzer
Date:
Subject: Re: psql swallowed my "BEGIN;" on reset... user beware?