Re: How to join several selects

From: Zac <zaccheob(at)inwind(dot)it>
To: pgsql-sql(at)postgresql(dot)org
Subject: Re: How to join several selects
Date: 2005-08-24 15:26:35
Message-ID: dei3fi$2miq$1@news.hub.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Josep Sanmartí wrote:
> Hello,
> I have a 'big' problem:
> I have the following table users(name, start_time, end_time), a new row
> is set whenever a user logs into a server. I want to know how many
> users have logged in EVERYDAY between 2 different dates. The only idea
> that I have is making several select (one for each day):
> SELECT COUNT(name) FROM users WHERE start_time between "startDate"
> and "startDate+1"
> SELECT COUNT(name) FROM users WHERE start_time between "startDate+1"
> and "startDate+2"
> ...
> I would like to know if its possible to make it in 1 sql statement or
> just which is the best efficient way to solve it.
> By the way, I use Postgres 7.4.
>
> Thanks!
>
SELECT
date_trunc('day', start_time) as day, count(name)
FROM
users
WHERE
start_time between "startDate" AND "endDate"
GROUP BY
day;

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Michael Fuhr 2005-08-24 17:46:12 Re: Number of rows in a cursor ?
Previous Message Bo Lorentsen 2005-08-24 14:29:00 Re: Number of rows in a cursor ?