[snip]
It seems you're dealing with area code logic. If you can re-schema your
tables, consider:
SELECT ...
LEFT JOIN phoneno on cdr.dialednoid = phoneno.id
WHERE ...
AND phoneno.areacode in (866,877,888)
AND ...
Get the idea?
[/snip]
Thanks all! Here is the final (reducing query time from plus 30 minutes
to under 3 minutes)
SELECT COUNT(cdr.ani) AS qtyin, SUM(cdr.calldur)/60 AS minin
FROM tblCDR cdr LEFT OUTER JOIN CDRFilter e
ON cdr.dialedno = e.phoneNumber
WHERE e.phoneNumber IS NULL
AND LEFT(cdr.dialedno, 3) IN ('800','866','877','888')
AND cdr.pindigs = ''
AND cdr.predig <> '2'
AND cdr.predig <> '3'
AND cdr.discn_dt <= '2003-05-25'
AND cdr.billed_flag = ''
This requires no change to the table, no tables to be added.
Thanks!
jay
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]