本文简要介绍 python 语言中 arcgis.features.Table.query
的用法。
用法:
query(where='1=1', out_fields='*', time_filter=None, return_count_only=False, return_ids_only=False, return_distinct_values=False, group_by_fields_for_statistics=None, statistic_filter=None, result_offset=None, result_record_count=None, object_ids=None, gdb_version=None, order_by_fields=None, out_statistics=None, return_all_records=True, historic_moment=None, sql_format=None, return_exceeded_limit_features=None, as_df=False, having=None, **kwargs)
返回:
FeatureSet
对象,或者如果`as_df=True`
则为 Panda 的 DataFrame,包含与查询匹配的特征,除非指定了其他返回类型,例如return_count_only
query
方法根据一组条件查询Table
层。Parameter
Description
where
可选字符串。默认值为 1=1。选择sql语句。
out_fields
可选的要返回的字段名称列表。字段名称可以指定为字段名称列表或逗号分隔的字符串。默认值为“*”,它返回所有字段。
object_ids
可选字符串。要查询的该图层或表的对象ID。对象 ID 值应该是逗号分隔的字符串。
time_filter
可选列表。格式为 [<startTime>, <endTime>],使用 datetime.date、datetime.datetime 或时间戳(以毫秒为单位)。语法:time_filter=[<开始时间>, <结束时间>] ;指定为
datetime.date, datetime.datetime or timestamp in milliseconds
gdb_version
可选字符串。要查询的地理数据库版本。仅当图层的 isDataVersioned 属性为 true 时,此参数才适用。如果未指定,则查询将应用于已发布Map的版本。
return_geometry
可选的布尔值。如果为真,几何图形将随查询返回。默认为真。
return_distinct_values
可选的布尔值。如果为真,它会根据out_fields 中指定的字段返回不同的值。仅当图层的 supportsAdvancedQueries 属性为 true 时,此参数才适用。
return_ids_only
可选的布尔值。默认为假。如果为 true,则响应仅包含对象 ID 数组。否则,响应是一个特征集。
return_count_only
可选的布尔值。如果为真,则响应仅包括查询将返回的计数(特征/记录的数量)。否则,响应是一个特征集。默认值为假。此选项取代 returnIdsOnly 参数。如果 returnCountOnly = true,则响应将返回计数和范围。
order_by_fields
可选字符串。需要对其特征/记录进行排序的一个或多个字段名称。分别使用 ASC 或 DESC 进行升序或降序,跟随每个字段来控制排序。例如:STATE_NAME ASC、种族 DESC、性别
group_by_fields_for_statistics
可选字符串。一个或多个字段名称,需要对其值进行分组以计算统计信息。示例:STATE_NAME,性别
out_statistics
可选字符串。要计算的一个或多个基于字段的统计数据的定义。
用法:
- [
- {
“statisticType”:“<count |总和 |分钟 |最大 |平均 |标准开发 | var>”,“onStatisticField”:“Field1”,“outStatisticFieldName”:“Out_Field_Name1”
}, {
“statisticType”: “<count | sum | min | max | avg | stddev | var>”, “onStatisticField”: “Field2”, “outStatisticFieldName”: “Out_Field_Name2”
}
]
result_offset
可选整数。该选项可用于通过跳过指定数量的记录并从下一条记录开始(即resultOffset + 1th)来获取查询结果。如果 return_all_records 为 True(即默认情况下),则忽略此选项。
result_record_count
可选整数。此选项可用于获取最多指定result_record_count 的查询结果。当指定result_offset 但未指定此参数时,Map服务默认为max_record_count。此参数的最大值是图层的max_record_count 属性的值。如果 return_all_records 为 True(即默认情况下),则忽略此选项。
return_all_records
可选的布尔值。当为 True 时,查询操作将调用服务,直到返回所有满足 where_clause 的记录。注意:如果 return_all_records 为 True,则 result_offset 和 result_record_count 将被忽略。此外,如果 return_count_only、return_ids_only 或 return_extent_only 为 True,则此参数将被忽略。
historic_moment
可选整数。历史性时刻查询。此参数仅适用于图层启用归档且 supportsQueryWithHistoricMoment 属性设置为 true 的情况。此属性在图层资源中提供。
如果未指定historic_moment,则查询将应用于当前要素。
sql_format
可选字符串。 sql_format 参数可以是标准 SQL92 标准,也可以使用底层数据存储本机的本机 SQL。默认值为 none,这意味着 sql_format 取决于 useStandardizedQuery 参数。值:无 |标准 |本国的
return_exceeded_limit_features
可选的布尔值。可选参数,默认为 true。设置为 true 时,即使结果包含“exceededTransferLimit”,也会返回特征:True。
当设置为 false 并且使用 resultType = 切片函数进行查询时,当结果包括“exceededTransferLimit”时,不返回:True。这允许客户端在不进行多次调用的情况下找到不再超过传输限制的分辨率。
as_df
可选布尔值。如果为 True,结果将作为 DataFrame 而不是函数集返回。
kwargs
可选字典。可以传递给查询函数的可选参数。这将允许用户传递未在函数上明确实现的附加参数。查询 REST API 中记录了可用函数的完整列表。
示例 1:
# Usage Example with only a "where" sql statement >>> feat_set = feature_layer.query(where = "OBJECTID1") >>> type(feat_set) <arcgis.Features.FeatureSet> >>> feat_set[0] <Feature 1>
示例 2:
# Usage Example of an advanced query returning the object IDs instead of Features >>> id_set = feature_layer.query(where = "OBJECTID1", out_fields = ["FieldName1, FieldName2"], distance = 100, units = 'esriSRUnit_Meter', return_ids_only = True) >>> type(id_set) <Array> >>> id_set[0] <"Item_id1">
示例 3:
# Usage Example of an advanced query returning the number of features in the query >>> search_count = feature_layer.query(where = "OBJECTID1", out_fields = ["FieldName1, FieldName2"], distance = 100, units = 'esriSRUnit_Meter', return_count_only = True) >>> type(search_count) <Integer> >>> search_count <149>
相关用法
- Python ArcGIS Table.query_date_bins用法及代码示例
- Python ArcGIS Table.query_related_records用法及代码示例
- Python ArcGIS Table.append用法及代码示例
- Python ArcGIS Table.calculate用法及代码示例
- Python ArcGIS Table.delete_features用法及代码示例
- Python ArcGIS Table.generate_renderer用法及代码示例
- Python ArcGIS Table.get_unique_values用法及代码示例
- Python ArcGIS Table.edit_features用法及代码示例
- Python ArcGIS Table.manager用法及代码示例
- Python ArcGIS TimeInstant用法及代码示例
- Python ArcGIS TrackView用法及代码示例
- Python ArcGIS TimeInterval用法及代码示例
- Python ArcGIS Timeline用法及代码示例
- Python ArcGIS power用法及代码示例
- Python ArcGIS APIKeyManager.get用法及代码示例
- Python ArcGIS KnowledgeGraph.named_object_type_delete用法及代码示例
- Python ArcGIS ContentManager.unshare_items用法及代码示例
- Python ArcGIS ImageryLayer.thumbnail用法及代码示例
- Python ArcGIS FormFieldElement用法及代码示例
- Python ArcGIS Geometry.true_centroid用法及代码示例
- Python ArcGIS Site.delete用法及代码示例
- Python ArcGIS GeoAccessor.bbox用法及代码示例
- Python arcgis.apps.hub.Initiative.update用法及代码示例
- Python ArcGIS generate_service_areas用法及代码示例
- Python ArcGIS build_overview用法及代码示例
注:本文由纯净天空筛选整理自arcgis.com大神的英文原创作品 arcgis.features.Table.query。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。