Jake,
you are right: the FeatureLayer/GetCount recipe has excellent performance.
Thank You, Bernhard
sde_connection = r'O:\_______.sde'
tiles = [u'2710_1253', u'2727_1227', u'2666_1193', u'2780_1170', u'2740_1214',
u'2670_1263', u'2737_1235', u'2764_1215', u'2623_1217', u'2621_1190']
if __name__ == '__main__':
def f1():
for name in tiles:
con = arcpy.ArcSDESQLExecute(sde_connection)
n = con.execute('SELECT COUNT (NAME) FROM ISOLINES WHERE NAME = \'{0}\''.format(name))
return
def f2():
for name in tiles:
arcpy.Delete_management('out_layer')
arcpy.MakeFeatureLayer_management(in_features=sde_isolinien_FC,
out_layer='out_layer',
where_clause='NAME = \'{0}\''.format(name))
n = arcpy.GetCount_management('out_layer').getOutput(0)
return
r1 = timeit.repeat(stmt='f1()', setup='from __main__ import f1',repeat=5,number=1)
r2 = timeit.repeat(stmt='f2()', setup='from __main__ import f2',repeat=5,number=1)
print r1
print r2
the output:
[2.3578824236148948, 0.663463898293061, 0.6561606928581454, 0.6562781213256437, 0.6874187019173439]
[12.34176151757427, 0.5830196624761683, 0.6405659508762618, 0.6435843756744966, 0.5681143976659193]