mirror of
https://github.com/postgres/postgres.git
synced 2025-11-09 06:21:09 +03:00
Bug #1: attribute name when column is type cast:
Given the following table:
test=# \d f
Table "f"
Column | Type | Modifiers
--------+---------+-----------
i | integer |
test | text |
If I do the following:
test=# insert into f values(1,'test');
INSERT 139549 1
test=# select i::int8,test from f;
?column? | test
----------+------
1 | test
(1 row)
It doesn't make much sense that the first column should be called
'?column?'.
The patch results in the output appearing like this:
test=# select i::int8,test from f;
i | test
---+------
1 | test
(1 row)
----------
Gavin Sherry
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/parse_target.c,v 1.70 2001/08/09 18:28:18 petere Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/parse_target.c,v 1.71 2001/09/10 14:53:10 momjian Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -462,7 +462,10 @@ FigureColname(Node *expr, Node *resval)
|
||||
/* Some of these are easiest to do with the untransformed node */
|
||||
switch (nodeTag(resval))
|
||||
{
|
||||
case T_Ident:
|
||||
case T_TypeCast:
|
||||
return( ( ((Ident *) ((TypeCast *) resval)->arg)->name));
|
||||
|
||||
case T_Ident:
|
||||
return ((Ident *) resval)->name;
|
||||
case T_Attr:
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user