From: | Darren Greer <dgreer(at)websightsolutions(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | pgsql-sql(at)postgreSQL(dot)org |
Subject: | Re: [SQL] Trouble with massive select statement. |
Date: | 1999-06-22 12:08:40 |
Message-ID: | 99062207125208.13060@george |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
See below
> > select distinct username, station
> > from testmaster t1
> > where 1 < (
> > select count(t2.username)
> > from testmaster t2
> > where t2.test_date > '05-14-1999'
> > and t2.station = 'WZZZ'
> > and t1.username = t2.username
> > )
> > ;
>
> The above doesn't seem to me to do what you claim you want to do ---
> it seems to be looking for users who have taken the test *more than
> once* in the given interval.
That is correct......my mistake :)
> Assuming that the code is right and the comment wrong ;-), I agree
Good assumption :)
> SELECT username, station FROM testmaster
> WHERE test_date > '05-14-1999' and station = 'WZZZ'
> GROUP BY username, station
> HAVING count(*) > 1;
This works wonderfully, thanks. Now comes the other twist. I already have a
select statement (select first_name, email from listeners l, listeners_data ld
where l.username = ld.username a nd $filter;). The $filter is a bunch of and
statements that limit the data coming from the table listeners. I need to get
the select statement you told me to work as a filter on the data that this
select statement grabs. I cant see an easy way to do this without making this
thing incredibly slow having to chech every user. Any thoughts?
Darren
From | Date | Subject | |
---|---|---|---|
Next Message | Luiz Renuncio | 1999-06-22 13:11:46 | Sharing a user defined type |
Previous Message | José Soares | 1999-06-22 06:37:53 | Re: [SQL] ODBC SQL question |