Muchas gracias gnzsoloyo por la ayuda, con los inner joins mejoro el tiempo con la funcion date tambien, lo dejo asi ya que me pidiron que lo entregara
Código:
select sum(db.CANTDESP*db.PRECUNIT), count(DISTINCT db.NUMRECOR) as cantidad_pedido1 from NOTDE_DB db
inner join NOTV_DB tv on tv.NUMREG=db.NUMRECOR
inner join ART_DB art on art.NREGUIST=db.NCODART
inner join aclase6_codigo a on a.codigo=art.CODIGO
where
(date(tv.FECHA) between '2011-06-01' and '2011-06-31') and
tv.CODVEND=84 and
a.nombre='SP';
gracias.