Complex sql, limit-for-each group by, arrays, updates - Mailing list pgsql-general

From Dorian Hoxha
Subject Complex sql, limit-for-each group by, arrays, updates
Date
Msg-id CANsFX05S8tRcskFx5_HqMHkx+acW41VFN7hRcNUXpsEV1R52TA@mail.gmail.com
Whole thread Raw
Responses Re: Complex sql, limit-for-each group by, arrays, updates  (David Johnston <polobo@yahoo.com>)
List pgsql-general
Hi,

So i have (table where data will be read) : 
CREATE TABLE data (vid,cid,pid,number);

Tables where data will be writen/updated:

CREATE TABLE pid_top_vids (pid, vid[])
CREATE TABLE pid_top_cids (pid, cid[])
CREATE TABLE cid_top_vids (cid, vid[])

I need to , possibly in 1 query, this will run once in a while: 
Get top(10) vids , sorted by 'number',grouped by pid and update the row in TABLE(pid_top_vids).

Get top(10) vids, sorted by 'number', grouped by cid and update the row in TABLE(cid_top_vids).

Get top(10) cids, sorted by 'number', where number is the SUM() of each vid GROUP_BY(cid) and update the row in TABLE (cid_top_vids);

So, get data, create sorted array, and update the rows (they exist, so only the arrays have to be updated).

Possible ?
Thanks

pgsql-general by date:

Previous
From: David Rysdam
Date:
Subject: Re: having difficulty with explain analyze output
Next
From: Vik Fearing
Date:
Subject: Re: help interpreting "explain analyze" output