combining records from a single table and presenting them as one record - Mailing list pgsql-sql

From Abhishek
Subject combining records from a single table and presenting them as one record
Date
Msg-id 506ca6630510271100y367e1fb2hfb05f5ecaae043a3@mail.gmail.com
Whole thread Raw
Responses Re: combining records from a single table and presenting them as one record  (boinger <boinger@gmail.com>)
List pgsql-sql
Hi Everyone
 
I have a table "TABLE1"  which has
----------------------------------------------------
Callguid      |       digits     |      type
----------------------------------------------------
xxxx                   123               'a'
xxxx                   345               'b'
xxxx                   678               'c'
 
type can have only 'a', 'b' or 'c' as its value.
I am tryng to write a query which returns me a record like this
 
-------------------------------------------------------------------------------------------------------
CallGuid      |       a type digits       |     b type digits     |     c type digits
-------------------------------------------------------------------------------------------------------
xxxx                    123                         345                       678
 
 
I do the query as this:
 
select callguid , ( select digits from TABEL1 where type='a' ), ( select digits from TABEL1 where type='b' ), ( select digits from TABEL1 where type='c' ) from TABLE1; 
 
result:
-------------------------------------------------------------------------------------------------------
CallGuid      |       a type digits       |     b type digits     |     c type digits
-------------------------------------------------------------------------------------------------------
xxxx                    123                         345                       678
xxxx                    123                         345                       678
xxxx                    123                         345                       678
 
Note that I get the records which i wanted, but I get them duplicated. If I use 'distinct' keyword I get the desired result with no duplication. But 'distinct' seems to be too expensive.
 
Is there any better way I can do this without compromising the performance ?
 
Your suggestions and input are very appreciated
 
Thanks
AJ
 


--
Abhishek Jain
 

pgsql-sql by date:

Previous
From: "Jim C. Nasby"
Date:
Subject: Re: How to speed up the database query?
Next
From: "Jim C. Nasby"
Date:
Subject: Re: why vacuum