This is great - despite the limitations on accuracy.
I have a collection of IP Addresses in the Visitor_Log table, which I convert to an IPNum - no problems there - then I wish to do a join to the Blocks table and thus the Location table. If I do very small subset (say 13 IPNums) and do a INNER JOIN with the BETWEEN criteria it takes about 13 seconds. When I do it with 300 IPNums it takes over 10 mins. Looks like the BETWEEN is too heavy.
Any ideas how I could make this thing run like "a cut cat"?
Here's the query being used:-
SELECT
l.Referrer,
l.IPAddress,
l.IPNum,
b.locId,
cl.country,
cl.region,
cl.city,
cl.postalCode,
cl.latitude,
cl.longitude,
cl.areaCode,
cl.metroCode,
b.startIpNum,
b.endIpNum
FROM
Visitor_Log AS l INNER JOIN
GeoLiteCity_Blocks AS b ON l.IPNum BETWEEN b.startIpNum AND b.endIpNum INNER JOIN
GeoLiteCity_Location AS cl ON b.locId = cl.locId
[font="Arial"]-----------------------------------------------------------------
Rich N - Development Manager @ Delta Technology Solutions Ltd - M.O.T.H.E.R. your virtual Sys Admin - Remote Server Health Monitoring - 24 x 7 www.deltatsl.com[/font]