排序 (数据管理)

描述

根据一个或多个字段值对要素类或表中的记录按升序或降序进行重新排序。重新排序的结果将被写入到新数据集中。

了解有关排序工作原理的详细信息

插图

通过对一个或多个字段进行排序来更改要素类或表的顺序。

使用方法

  • 可在空间上对要素类进行重新排序或排列。必须将 Shape 字段用作空间排序的排序字段。有很多空间排序方法根据要素位置以不同方式来排列要素。

  • 如果选择了任何输入记录,则只会对所选记录的子集进行排序并将其写入到输出。

  • 如果将多个字段设置为排序字段,则首先按第一个字段对行进行排序,然后按第二个字段对经过排序的行进行排序,依此类推。

  • 可使用地理数据库要素类的 Shape_Area 字段按面积对面要素进行排序。同样,也可使用 Shape_Length 字段按长度对折线要素进行排序。要对 shapefile 中的面要素进行排序,请添加一个新字段,并使用计算字段计算面积作为新字段的值,然后根据新建字段运行排序

  • 许可:

    对于字段参数,按 Shape 字段排序或按多个字段排序仅在具有 Desktop Advanced 许可时适用。按任何单个属性字段(不包括 Shape 字段)排序在所有级别许可下都适用。

  • 如果您使用传送地理数据库属性环境,则此工具可将输入数据集的子类型、域和其他高级地理数据库字段属性传送至输出数据集。

  • 如果您使用维护附件环境,则此工具可将输入数据集的地理数据库附件复制到输出数据集。

语法

arcpy.management.Sort(in_dataset, out_dataset, sort_field, {spatial_sort_method})
参数说明数据类型
in_dataset

要根据一个或多个排序字段中的字段值对记录进行重新排序的输入数据集。

Table View
out_dataset

输出要素类或表。

Feature Class; Table
sort_field
[[sort_field, direction],...]

指定包含对输入记录重新排序所用的值的一个或多个字段,以及记录的排序方向。

许可:

Shape 字段排序或按多个字段排序仅在具有 Desktop Advanced 许可时适用。按任何单个属性字段(不包括 Shape 字段)排序在所有级别许可下都适用。

  • 升序 - 按照值从低到高的顺序对记录进行排序。
  • 降序 - 按照值从高到低的顺序对记录进行排序。
Value Table
spatial_sort_method
(可选)

指定对要素进行空间排序的方法。仅当将 Shape 字段作为排序字段之一时,排序方法才可用。

  • UR从右上角开始排序。这是默认设置。
  • UL从左上角开始排序。
  • LR从右下角开始排序。
  • LL从左下角开始排序。
  • PEANO使用空间填充曲线算法(也称为皮亚诺曲线)排序。
String

代码示例

Sort 示例 1(Python 窗口)

以下 Python 窗口脚本演示了如何根据字段值使用 Sort 对要素进行排列。

import arcpy
from arcpy import env

env.workspace = "C:/data/city.gdb"

arcpy.Sort_management("crime", "crime_Sort", [["DATE_REP", "ASCENDING"]])
Sort 示例 2(独立脚本)

以下 Python 脚本演示了如何在独立脚本中使用 Sort

# Name: Sort_example2.py
# Description: Sorts wells by location and well yield.

# Import system modules
import arcpy

# Set workspace environment
arcpy.env.workspace = "C:/data/newfoundland.gdb"

# set local variables
in_dataset = "wells"
out_dataset = "wells_Sort"

# Order features first by location (Shape) and then by WELL_YIELD
sort_fields = [["Shape", "ASCENDING"], ["WELL_YIELD", "DESCENDING"]]

# Use Peano algorithm
sort_method = "PEANO"

# execute the function
arcpy.Sort_management(in_dataset, out_dataset, sort_fields, sort_method)

许可信息

  • Basic: 受限
  • Standard: 受限
  • Advanced: 是

相关主题