Re: selecting multiple like-named columns

From: David Link <dvlink(at)yahoo(dot)com>
To: "Johnson, Shaunn" <SJohnson6(at)bcbsm(dot)com>, pgsql-general(at)postgresql(dot)org
Subject: Re: selecting multiple like-named columns
Date: 2002-08-27 23:23:29
Message-ID: 20020827232329.96360.qmail@web13507.mail.yahoo.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

That said, if you want to do what you mentioned, you can do it
programmatically ...

my $select_list = join(",", map "${_}_sales", qw/chicago nyc boston/);

# That one-liner is the same as:
# my $select_list = "";
# my $comma = "";
# for my $city ("chicago", "nyc", "boston") {
# $select_list .= $comma . "$city" . "_sales";
# $comma = ",";
# }
# 'cause perl rocks the house.

#dynamic sql using DBI
my $SQL = $select_list . " from table";
my $sth = $dbh->prepare($SQL);
$sbh->execute;
for (@col = $sth->fetchrow_array) {
print join (", ", @col), "\n";
}

--- David Link <dvlink(at)yahoo(dot)com> wrote:
> You may have denormalized your data, for example if you have one
> table
> like this:
>
> date | chicago_sales | ny_sales | boston_sales | etc
>
> It may be more convenient to store it like this:
>
> date | city | sales
>
> then you can say
>
> select sales from table where city = 'ny';
>
> or what you want by not specifying a filter:
>
> select sales from table;
>
> or
>
> select sum(sales) from table;
> select sum(sales) from table where city in ('ny', 'chicago');
>
>
> There is only one reason you may want to keep it denormalized .. and
> that is for performance if the report you need looks like the
> original
> table above.
>
>
> --- "Johnson, Shaunn" <SJohnson6(at)bcbsm(dot)com> wrote:
> >
> > Howdy:
> >
> > Running PostgreSQL 7.2.1 on RedHat Linux 7.2.
> >
> > Is there a way to do a select for the column
> > names from a table by using some type of
> > wild card?
> >
> > Let's say I have something like column_1, column_2,
> > other_column_1, other_column_2 ...
> >
> > [example]
> >
> > select
> > column_%,
> > other_column_%,
> > from
> > t_table
> > ;
> >
> > [/example]
> >
> > I'm trying to figure out how to get all of the
> > data from the columns that have similar
> > names.
> >
> > Thanks!
> >
> > -X
> >
>
>
> __________________________________________________
> Do You Yahoo!?
> Yahoo! Finance - Get real-time stock quotes
> http://finance.yahoo.com
>
> ---------------------------(end of
> broadcast)---------------------------
> TIP 3: if posting/reading through Usenet, please send an appropriate
> subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
> message can get through to the mailing list cleanly

__________________________________________________
Do You Yahoo!?
Yahoo! Finance - Get real-time stock quotes
http://finance.yahoo.com

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Altibano Ortenzi 2002-08-28 00:36:25 Inquiry From Form [pgsql]
Previous Message Alvaro Herrera 2002-08-27 23:19:46 Re: Free space mapping (was Re: Multi-Versions and Vacuum)