ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

专为贵组织打造的制图平台

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS Developers

用于构建位置感知应用程序的工具

ArcGIS Solutions

适用于行业的免费模板地图和应用程序

ArcGIS Marketplace

获取适用于组织的应用程序和数据

  • 文档
  • 支持
Esri
  • 登录
user
  • 我的个人资料
  • 登出

ArcMap

  • 主页
  • 入门
  • 地图
  • 分析
  • 管理数据
  • 工具
  • 扩展模块

与 ST_Geometry 配合使用的 SQL 函数

  • SQL 函数的列表

进行以下任意操作时,会创建特定的 SQL 函数和类型:

  • 在 Oracle 或 PostgreSQL 数据库中创建地理数据库。
  • 在 Oracle 或 PostgreSQL 数据库中安装 ST_Geometry 空间数据类型。
  • 使用 createSQLiteDatabase ArcPy 函数创建 SQLite 数据库,并指定 ST_Geometry 空间数据类型。

在 Oracle 和 PostgreSQL 数据库中,ST_Geometry 类型及其函数创建于 sde 用户的方案中。在 SQLite 中,类型和函数存储在一个库中,在对 SQLite 数据库执行 SQL 之前必须加载该库。

本帮助部分提供了一个可与 ST_Geometry 空间数据类型配合使用的函数列表及其描述。函数主题的结构如下:

  • 定义

    函数的描述

  • 语法

    用于使用函数的正确语法

    请注意,对于关系运算符来说,参数的指定顺序十分重要:第一个参数应表示从中进行选择的表,而第二个参数应表示正用作过滤器的表。

  • 返回类型

    执行函数时所返回的数据类型

  • 示例

    使用特定函数的示例

注:

该部分中的示例不会为创建的表构建空间索引。要创建空间索引,请参阅使用 SQL 为包含 ST_Geometry 列的表创建空间索引以获得相关说明。

SQL 函数的列表

单击下面的链接将会转到可与Oracle、PostgreSQL 和 SQLite 中的 ST_Geometry 类型配合使用的函数。

在 Oracle 中使用 ST_Geometry 函数时,必须使用 sde 对函数和运算符进行限定。例如,ST_Buffer 将为 sde.ST_Buffer。添加 sde. 将向软件说明该函数存储在 sde 用户的方案中。对于 PostgreSQL,可选择是否进行限定,但包括限定符是一个很好的做法。与 SQLite 配合使用函数时,不包括进行限定,因为在 SQLite 数据库中没有 sde 方案。

当使用 ST_Geometry SQL 函数提供熟知文本字符串作为输入时,可以使用科学记数法来指定非常大或非常小的值。例如,如果在构建新要素时使用熟知的文本指定坐标,并且其中一个坐标为 0.000023500001816501026,则可以键入 2.3500001816501026e-005 代替。

提示:

对于其他数据库中的空间类型(例如 PostGIS 类型、SQL Server 空间类型、Oracle SDO_Geometry 或 SAP HANA ST_Geometry),请参阅数据库管理系统供应商提供的文档,以获取有关这些空间类型所使用的函数的信息。

ST_Geometry SQL 函数可以根据用途进行分组。

构造函数

构造函数会获取一种几何类型或几何的文本说明,然后创建一个几何。下表列出了构造函数,并指出哪些 ST_Geometry 实现支持所有的构造函数。

构造函数

函数OraclePostgreSQLSQLite

ST_Curve

X

X

ST_GeomCollection

X

X

ST_GeomCollFromWKB

X

ST_Geometry

X

X

X

ST_GeomFromText

X

X

ST_GeomFromWKB

ST_LineFromText

X

X

ST_LineFromWKB

X

X

X

ST_LineString

X

X

X

ST_MLineFromText

X

X

ST_MLineFromWKB

X

X

X

ST_MPointFromText

X

X

ST_MPointFromWKB

X

X

X

ST_MPolyFromText

X

X

ST_MPolyFromWKB

X

X

X

ST_MultiCurve

X

ST_MultiLineString

X

X

X

ST_MultiPoint

X

X

X

ST_MultiPolygon

X

X

X

ST_MultiSurface

X

ST_Point

X

X

X

ST_PointFromText

X

X

ST_PointFromWKB

X

X

X

ST_PolyFromText

X

X

ST_PolyFromWKB

X

X

X

ST_Polygon

X

X

X

ST_Surface

X

X

存取器函数

有很多函数都采用一个或多个几何作为输入,并返回关于几何的特定信息。

其中一些存取器函数会检查要素是否符合特定条件。如果几何满足条件,则函数会返回 1 或 t(表示 TRUE)。如果几何不满足条件,则函数会返回 0 或 f(表示 FALSE)。

如无特殊说明,这些函数适用于所有实现。

存取器函数

ST_Area

ST_AsBinary

ST_AsText

ST_Centroid

ST_CoordDim

ST_Dimension

ST_EndPoint

ST_Entity

ST_GeomFromCollection(仅 PostgreSQL)

ST_GeometryType

ST_GeoSize (仅 PostgreSQL)

ST_Is3d(仅 Oracle 和 SQLite)

ST_IsClosed

ST_IsEmpty

ST_IsMeasured(仅 Oracle 和 SQLite)

ST_IsRing

ST_IsSimple

ST_Length

ST_M

ST_MaxM

ST_MaxX

ST_MaxY

ST_MaxZ

ST_MinM

ST_MinX

ST_MinY

ST_MinZ

ST_NumGeometries

ST_NumInteriorRing

ST_NumPoints

ST_Perimeter

ST_SRID

ST_StartPoint

ST_X

ST_Y

ST_Z

关系函数

关系函数将几何作为输入并确定各几何之间是否存在特定关系。如果满足空间关系的条件,则这些函数会返回 1 或 t(表示 TRUE)。如果未满足条件(不存在关系),这些函数会返回 0 或 f(表示 FALSE)。

如无特殊说明,这些函数适用于所有实现。

关系函数

ST_Contains

ST_Crosses

ST_Disjoint

ST_DWithin (仅 Oracle 和 PostgreSQL)

ST_EnvIntersects(仅 Oracle 和 SQLite)

ST_Equals

ST_Intersects

ST_OrderingEquals(仅 Oracle 和 PostgreSQL)

ST_Overlaps

ST_Relate

ST_Touches

ST_Within

几何函数

这些函数利用空间数据并对其执行分析,然后返回新的空间数据。

如无特殊说明,这些函数适用于所有实现。

几何函数

ST_Aggr_ConvexHull(仅 Oracle 和 SQLite)

ST_Aggr_Intersection(仅 Oracle 和 SQLite)

ST_Aggr_Union(仅 Oracle 和 SQLite)

ST_Boundary

ST_Buffer

ST_ConvexHull

ST_Difference

ST_Distance

ST_Envelope

ST_Equalsrs(仅 PostgreSQL)

ST_ExteriorRing

ST_GeometryN

ST_InteriorRingN

ST_Intersection

ST_PointN

ST_PointOnSurface

ST_SymmetricDiff

ST_Transform

ST_Union

相关主题

  • ST_Geometry 的构造函数
  • 空间存取器函数
  • 空间关系
  • 空间运算

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS
  • ArcGIS Developer
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

  • 关于我们
  • 招贤纳士
  • Esri 博客
  • 用户大会
  • 开发者峰会
Esri
分享您的想法。
Copyright © 2021 Esri. | 隐私政策 | 法律声明