在 mysql 数据库中打开 "shape" 属性
open "shape" attribute in mysql database
我在做路网项目。我想获得每个段的 GPS 坐标。我刚刚将形状文件数据转换为 mysql 数据库,并且有一个名为 SHAPE
的属性,它是 "geometry" 类型。我试着
select SHAPE from table
而且输出很乱。
有人知道如何打开这个 "geometry" 类型的 SHAPE 属性吗?
我还想知道形状文件是否适合使用,因为还有另一种数据类型:地理数据库。如果我要提取路网数据,哪个更好
Mysql 支持多种用于编辑和查询空间数据的几何函数。
有关完整列表,请参阅 here
一些例子:
-- show the WKT representation of the geometry
SELECT ST_AsText(SHAPE) FROM table;
-- show the coordinates of start and end point of the lines
SELECT ST_AsText(ST_StartPoint(SHAPE)), ST_AsText(ST_EndPoint(SHAPE)) FROM table;
-- show how many points build the line
SELECT ST_NumPoints(SHAPE)) FROM table;
-- length of the lines
SELECT ST_Length(SHAPE)) FROM table;
如果您需要线条的所有坐标,您可以简单地解析 ST_AsText(SHAPE)
查询的结果。
或者,我会推荐这个工作流程:
1) 用函数ST_NumPoints(SHAPE)
查询每条线的点数
2) 遍历1和点数,用函数ST_X(ST_PointN(SHAPE, n))
和ST_Y(ST_PointN(SHAPE, n))
得到实际点的坐标,其中n
是实际点数
迭代可以在 mysql 存储过程或外部程序或脚本中实现。
有关线串特定功能,请参阅 here。
地理数据库还是 Shapefile?
您目前既没有使用 shapefile 也没有使用地理数据库,而是 MySql。如果只想导入数据库中的网络数据,shapefile 就可以了。另一方面,使用地理数据库,您可能可以更好地在 ArcGis 中工作,而无需使用外部工具。
如果你想使用外部数据库,我建议你在 PostgreSQL 中导入形状文件而不是 MySql,因为它对空间数据的支持更强大。
我在做路网项目。我想获得每个段的 GPS 坐标。我刚刚将形状文件数据转换为 mysql 数据库,并且有一个名为 SHAPE
的属性,它是 "geometry" 类型。我试着
select SHAPE from table
而且输出很乱。
有人知道如何打开这个 "geometry" 类型的 SHAPE 属性吗?
我还想知道形状文件是否适合使用,因为还有另一种数据类型:地理数据库。如果我要提取路网数据,哪个更好
Mysql 支持多种用于编辑和查询空间数据的几何函数。 有关完整列表,请参阅 here
一些例子:
-- show the WKT representation of the geometry
SELECT ST_AsText(SHAPE) FROM table;
-- show the coordinates of start and end point of the lines
SELECT ST_AsText(ST_StartPoint(SHAPE)), ST_AsText(ST_EndPoint(SHAPE)) FROM table;
-- show how many points build the line
SELECT ST_NumPoints(SHAPE)) FROM table;
-- length of the lines
SELECT ST_Length(SHAPE)) FROM table;
如果您需要线条的所有坐标,您可以简单地解析 ST_AsText(SHAPE)
查询的结果。
或者,我会推荐这个工作流程:
1) 用函数ST_NumPoints(SHAPE)
2) 遍历1和点数,用函数ST_X(ST_PointN(SHAPE, n))
和ST_Y(ST_PointN(SHAPE, n))
得到实际点的坐标,其中n
是实际点数
迭代可以在 mysql 存储过程或外部程序或脚本中实现。
有关线串特定功能,请参阅 here。
地理数据库还是 Shapefile? 您目前既没有使用 shapefile 也没有使用地理数据库,而是 MySql。如果只想导入数据库中的网络数据,shapefile 就可以了。另一方面,使用地理数据库,您可能可以更好地在 ArcGis 中工作,而无需使用外部工具。
如果你想使用外部数据库,我建议你在 PostgreSQL 中导入形状文件而不是 MySql,因为它对空间数据的支持更强大。