From: | Abhishek <ajcool(at)gmail(dot)com> |
---|---|
To: | pgsql-sql(at)postgresql(dot)org |
Subject: | combining records from a single table and presenting them as one record |
Date: | 2005-10-27 18:00:41 |
Message-ID: | 506ca6630510271100y367e1fb2hfb05f5ecaae043a3@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | 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
From | Date | Subject | |
---|---|---|---|
Next Message | MaXX | 2005-10-27 20:07:09 | Re: Merging lines with NULLs (with example data) |
Previous Message | Jim C. Nasby | 2005-10-27 17:52:15 | Re: why vacuum |