| From: | droberts <david(dot)roberts(at)riverbed(dot)com> |
|---|---|
| To: | pgsql-general(at)postgresql(dot)org |
| Subject: | Approach to extract top records from table based upon aggregate |
| Date: | 2015-11-02 22:14:09 |
| Message-ID: | 1446502449172-5872427.post@n5.nabble.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-general |
Hi, I have a table that contains call records. I'm looking to get only
records for users who made the most calls over a particular time duration in
an efficient way.
calls()
time, duration, caller_number, dialed_number
-- query to get top 10 callers
select caller_number, count(1) from calls group by caller_number order by
calls desc limit 10
--my current query to get those callers
select * from call where caller_number in (above query)
It works but I was hoping for something a little more efficient if anyone
has an idea.
Tahnks
--
View this message in context: http://postgresql.nabble.com/Approach-to-extract-top-records-from-table-based-upon-aggregate-tp5872427.html
Sent from the PostgreSQL - general mailing list archive at Nabble.com.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | David G. Johnston | 2015-11-02 22:22:31 | Re: Approach to extract top records from table based upon aggregate |
| Previous Message | Thomas Kellerer | 2015-11-02 21:41:01 | Re: Is there bigintarray? |