名称

ST_AsLatLonText — 返回给定点的度、分、秒表示。

概要

text ST_AsLatLonText(geometry pt, text format='');

描述

返回点的度、分、秒表示。

[Note]

假设该点位于经纬度投影中。X(经度)和 Y(纬度)坐标在输出中被规范化为“正常”范围(经度为 -180 到 +180,纬度为 -90 到 +90)。

text 参数是一个格式字符串,包含结果文本的格式,类似于日期格式字符串。有效的标记是“D”表示度,“M”表示分,“S”表示秒,“C”表示基点方向(NSEW)。DMS 标记可以重复以指示所需的宽度和精度(“SSS.SSSS”表示“ 1.0023”)。

“M”、“S”和“C”是可选的。如果省略“C”,则度数将显示为负号,如果为南或西。如果省略“S”,则分钟将显示为小数,精度与您指定的位数相同。如果也省略“M”,则度数将显示为小数,精度与您指定的位数相同。

如果格式字符串被省略(或长度为零),则将使用默认格式。

可用性:2.0

示例

默认格式。

SELECT (ST_AsLatLonText('POINT (-3.2342342 -2.32498)'));
      st_aslatlontext
----------------------------
 2°19'29.928"S 3°14'3.243"W

提供格式(与默认格式相同)。

SELECT (ST_AsLatLonText('POINT (-3.2342342 -2.32498)', 'D°M''S.SSS"C'));
      st_aslatlontext
----------------------------
 2°19'29.928"S 3°14'3.243"W

除了 D、M、S、C 和 . 之外的字符将被直接传递。

SELECT (ST_AsLatLonText('POINT (-3.2342342 -2.32498)', 'D degrees, M minutes, S seconds to the C'));
                                   st_aslatlontext
--------------------------------------------------------------------------------------
 2 degrees, 19 minutes, 30 seconds to the S 3 degrees, 14 minutes, 3 seconds to the W

带符号的度数而不是基点方向。

SELECT (ST_AsLatLonText('POINT (-3.2342342 -2.32498)', 'D°M''S.SSS"'));
      st_aslatlontext
----------------------------
 -2°19'29.928" -3°14'3.243"

十进制度数。

SELECT (ST_AsLatLonText('POINT (-3.2342342 -2.32498)', 'D.DDDD degrees C'));
          st_aslatlontext
-----------------------------------
 2.3250 degrees S 3.2342 degrees W

过大的值被规范化。

SELECT (ST_AsLatLonText('POINT (-302.2342342 -792.32498)'));
        st_aslatlontext
-------------------------------
 72°19'29.928"S 57°45'56.757"E