I simulated your dataset with 200 points and 1.5m polygons, and successfully queried:SELECT a.polyid, p.pointid
FROM f_pnts p, f_pols a
WHERE SDE.st_intersects(a.poly,p.point)=1;
in 847.96 ms. I gave up onSELECT a.polyid, p.pointid
FROM f_pnts p, f_pols a
WHERE SDE.st_intersects(p.point,a.poly)=1;
after ten minutes. When I dropped the polygon count by an order of magnitude,this "find points which overlap polys" query ran in 14.56 minutes.So the moral of this story is to make sure you place the smaller set of geometries in the second position in the Oracle SDE.ST_INTERSECTS operator.Note: The PostgreSQL optimizer works differently, so the equivalent query on SDE.ST_GEOMETRY in PG 9.1 returned in <45ms against 216k polygons, no matter the order, and completed in <50ms against 1.34m polygons.- V