ArcGIS Desktop

  • 文档
  • 支持

  • My Profile
  • 帮助
  • Sign Out
ArcGIS Desktop

ArcGIS Online

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

ArcGIS Desktop

全面的专业性 GIS

ArcGIS Enterprise

面向企业的 GIS

ArcGIS for Developers

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

ArcGIS Solutions

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

ArcGIS Marketplace

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

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

ArcMap

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

ST_M

  • 定义
  • 语法
  • 返回类型
  • 示例

定义

ST_M 以 ST_Point 对象为输入参数,返回其测量 (m) 坐标。

在 SQLite 中,ST_M 也可以用于更新测量值。

语法

Oracle 和 PostgreSQL

sde.st_m (point1 sde.st_point)

SQLite

st_m (point1 geometryblob)
st_m (point1 geometryblob, new_Mvalue double)

返回类型

Oracle 和 PostgreSQL

数值

SQLite

查询测量值时返回双精度型;更新测量值时返回 geometryblob

示例

Oracle

创建表 m_test,并向其中插入三个点。所有三个点均包含测量值。SELECT 语句与 ST_M 函数共同运行,以返回每个点的测量值。

CREATE TABLE m_test (
 id integer,
 geometry sde.st_point);

INSERT INTO M_TEST VALUES (
 1,
 sde.st_point (2, 3, 32, 5, 4322)
);

INSERT INTO M_TEST VALUES (
 2,
 sde.st_point (4, 5, 20, 4, 4326)
);

INSERT INTO M_TEST VALUES (
 3,
 sde.st_point (3, 8, 23, 7, 4326)
);

SELECT id, sde.st_m (geometry) M_COORD
 FROM M_TEST; 

        ID    M_COORD

         1          5
         2          4
         3          7

PostgreSQL

创建表 m_test,并向其中插入三个点。所有三个点均包含测量值。SELECT 语句与 ST_M 函数共同运行,以返回每个点的测量值。

CREATE TABLE m_test (
 id serial,
 geometry sde.st_point
);

INSERT INTO m_test (geometry) VALUES (
 sde.st_point (2, 3, 32, 5, 4326)
);

INSERT INTO m_test (geometry) VALUES (
 sde.st_point (4, 5, 20, 4, 4326)
);

INSERT INTO m_test (geometry) VALUES (
 sde.st_point (3, 8, 23, 7, 4326)
);

SELECT id, sde.st_m (geometry) 
 AS M_COORD
 FROM m_test; 

        id    m_coord

         1          5
         2          4
         3          7

SQLite

在第一个示例中创建表 m_test,并向其中插入三个点。所有三个点均包含测量值。SELECT 语句与 ST_M 函数共同运行,以返回每个点的测量值。

CREATE TABLE m_test (
 id integer primary key autoincrement not null
);

SELECT AddGeometryColumn (
 NULL,
 'm_test',
 'geometry',
 4326,
 'pointzm',
 'xyzm',
 'null'
);

INSERT INTO m_test (geometry) VALUES (
 st_point (2, 3, 32, 5, 4326)
);

INSERT INTO m_test (geometry) VALUES (
 st_point (4, 5, 20, 4, 4326)
);

INSERT INTO m_test (geometry) VALUES (
 st_point (3, 8, 23, 7, 4326)
);

SELECT id, st_m (geometry) 
 AS M_COORD
 FROM m_test; 

id    m_coord

1     5.0
2     4.0
3     7.0

在第二个示例中,更新了 m_test 表中记录 3 的测量值。

SELECT st_m (geometry, 7.5)
 FROM m_test
 WHERE id = 3;

相关主题

  • 加载 SQLite ST_Geometry 库

ArcGIS Desktop

  • 主页
  • 文档
  • 支持

ArcGIS 平台

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

关于 Esri

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