From: | Vijay Deval <deval(at)giaspn01(dot)vsnl(dot)net(dot)in> |
---|---|
To: | Lukas Ertl <l(dot)ertl(at)univie(dot)ac(dot)at> |
Cc: | pgsql-novice(at)postgresql(dot)org |
Subject: | Re: Query performance question |
Date: | 2001-03-29 09:42:55 |
Message-ID: | 3AC3039F.A1FD836F@giaspn01.vsnl.net.in |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-novice |
URL is a very large field. If an extra field is created which gives a
neumeric id to the url, run the query on the number, and then get the desired
output
Vijay
Lukas Ertl wrote:
> Hi,
>
> I'm having trouble with an obviously simple query that just doesn't
> perform quite good IMO.
>
> I have two tables:
>
> httplog=# \d hits
> Table "hits"
> Attribute | Type | Modifier
> -------------+-----------+-----------------------------------------------
> id | integer | not null default nextval('hits_id_seq'::text)
> page_id | integer | not null
> referrer_id | integer | not null
> ip_addr | inet | not null
> time | timestamp | not null
> domain_id | integer | not null
> Index: hits_pkey
>
> httplog=# \d referrer
> Table "referrer"
> Attribute | Type | Modifier
> -----------+--------------+----------
> id | integer |
> url | varchar(300) |
> Index: referrer_pkey
>
> These are part of an HTTP-log database. Table 'hits' has about 7000
> rows, table 'referrer' has about 350 rows. Now I want to know what the top
> ten referrers are, and I issue this query:
>
> SELECT count(*), url FROM hits, referrer WHERE referrer.id = referrer_id
> GROUP BY url ORDER BY count DESC LIMIT 10;
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Lukas Ertl | 2001-03-29 09:44:41 | Re: Query performance question |
Previous Message | Ernest Chiarello | 2001-03-29 07:56:52 | Re: create rule and last record |