| From: | Adam Witney <awitney(at)sghms(dot)ac(dot)uk> | 
|---|---|
| To: | pgsql-sql <pgsql-sql(at)postgresql(dot)org> | 
| Subject: | query or design question | 
| Date: | 2003-10-20 10:58:00 | 
| Message-ID: | BBB97E48.26975%awitney@sghms.ac.uk | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-sql | 
Hi,
I have a table like so
CREATE TABLE imagene (
id             int
bioassay_id    int
gene_id        text
s_row          int
s_column       int
s_meta_row     int
s_meta_column  int
sig_median     numeric
bkg_median     numeric
);
Rows are unique on (bioassay_id, gene_id, s_row, s_column, s_meta_row,
s_meta_column)
They are grouped like this (note, the counts will not always be the same)
cabbage=# select bioassay_id, count(*) from imagene group by bioassay_id;
 bioassay_id | count
-------------+-------
         106 | 10944
         107 | 10944
And I need to generate an output like this......
             bioassay_id=106        bioassay_id=107
         ----------------------  ----------------------
gene_id, sig_median, bkg_median, sig_median, bkg_median
I can do something like this
SELECT a.gene_id,
         a.sig_median, a.bkg_median,
         b.sig_median, b.bkg_median
   FROM 
       imagene a,
       imagene b
   WHERE 
       a.s_meta_row = b.s_meta_row AND
       a.s_meta_col = b.s_meta_col AND
       a.s_row = b.s_row AND
       a.s_column = b.s_column AND
       a.bioassay_id = 106 AND
       b.bioassay_id = 107;
But this is quite slow... And not generic as I may need to generate the
output for more than two bioassay_ids. Also I may need to do an outer join
to make sure I get all rows from both data sets?
I am not sure if a crosstab function will do this?
Any ideas of pointers would be greatly appreciated
Thanks
Adam
-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Christopher Browne | 2003-10-20 12:29:45 | Re: Max input parameter for a function | 
| Previous Message | Alvar Freude | 2003-10-20 09:46:09 | Re: [postgres] PostgreSQL-DB auf Web-Schnittstelle bringen |