This past week I was working on a project where I compare a feature class to a table and delete the records in the feature class that don’t match.

Low and behold I hit an bug/error that set me off for about two hours.

I was generating a feature layer using arcpy.MakeFeatureLayer_Management with a query along the lines of ‘ID in (1,2,3,5…2000)’. This totally works on SQL, FGDB, PGDB, but kept returning null values in Oracle.

Not being a super oracle pro, I was dumbfounded. However it turns out, Oracle has a 1000 set limit for these sort of queries. Something to put in the back of your head I guess.