将 GeoJSON 转换为 MySQL

分享于2022年07月17日 geojson mysql 问答
【问题标题】:将 GeoJSON 转换为 MySQL(Converting GeoJSON to MySQL)
【发布时间】:2022-05-07 05:22:44
【问题描述】:

我没有太多使用 MySQL 的经验,更不用说扩展它了。我想将 SimpleGeo 数据导入 MySQL 数据库。这是一个条目的示例:

{ "geometry" : { "coordinates" : [ -87.547968999999995,
          33.151769000000002
        ],
      "type" : "Point"
    },
  "id" : "SG_1uDW3Q0HX5ZQPMw1q3XcGF_33.151769_-87.547969@1293731398",
  "properties" : { "address" : "6000 Old Greensboro Rd",
      "city" : "Tuscaloosa",
      "classifiers" : [ { "category" : "Restaurant",
            "subcategory" : "",
            "type" : "Food & Drink"
          } ],
      "country" : "US",
      "href" : "http://api.simplegeo.com/1.0/features/SG_1uDW3Q0HX5ZQPMw1q3XcGF_33.151769_-87.547969@1293731398.json",
      "name" : "Godfather's Pizza",
      "owner" : "simplegeo",
      "phone" : "+1 205 464 0000",
      "postcode" : "35405",
      "province" : "AL",
      "website" : "www.dinerrestaurants.com"
    },
  "type" : "Feature"
}

我想将其放入 MySQL 数据库中,并能够在其上运行地理空间查询。我知道 MySQL 有空间扩展,但我完全不知道从哪里开始。 MySQL 文档听起来好像它已经是 MySQL 的一部分,但真的是这样吗?我怎样才能运行整个(8 GB)文件并将其放入地理空间数据库?我可以使用 PHP 吗? (我对 PHP 很满意。)

我知道我在这里要求很多,但任何帮助都会很棒。

  • mysql版本是多少?
  • 你有准备好使用或需要开发的mysql表吗?
  • 你显示的这个数据,来自POST、GET、浏览器、jquery等?输出这种数据的技术是什么?
  • Ver 14.14 Distrib 5.5.32, for debian-linux-gnu (x86_64) using readline 6.2 是版本。我还没有为此制作表格,但我假设 JSON 将被展平,并且坐标将被包裹在某种几何数据类型中( point 似乎是从 MySql 文档开始的方式。)我不确定这些数据的输出是什么……它来自 SimpleGeo 转储。一个文件中至少还有一百万个类似的条目。正如我所说...它的大小为 8GB。

【解决方案1】:

您可以在 MySql 请求中使用 ST_GeomFromGeoJSON(GeoJson 格式的字符串) 函数。

  • 这种回答应该是解释不好的评论,,,