Re: [SQL] problem with join & count

From: jwieck(at)debis(dot)com (Jan Wieck)
To: pat(at)patoche(dot)org
Cc: pgsql-sql(at)postgreSQL(dot)org
Subject: Re: [SQL] problem with join & count
Date: 1999-02-04 21:49:28
Message-ID: m108WeP-000EBPC@orion.SAPserv.Hamburg.dsh.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

> i need an sql query that will return:
>
> name | how_often
> -------------------
> toto | 2
> titi | 1
> tutu | 2
>
> that is, the result table should contain all names present in the first table
> and then the number of times the number associated with the name appears in
> the second table.

Postgres does not (and v6.5 will not) support outer joins or
subselects in the targetlist, what's required to do that in a
single SQL statement.

What you could do is using a SQL function that covers the
count() like this:

create function num_refs (int4) returns int4 as '
select count(*) from tab2 where id = $1;
' language 'SQL';

select item_name, num_refs(id) as how_often from tab1;

I changed 'number' into id and name into item_name because
both are reserved words.

Jan

--

#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me. #
#======================================== jwieck(at)debis(dot)com (Jan Wieck) #

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Bruce Momjian 1999-02-04 21:51:58 Re: [SQL] keeping OID's when copying table
Previous Message Bruce Momjian 1999-02-04 21:42:32 Re: [SQL] keeping OID's when copying tableu