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) #
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 |