我有一個非常大的表(數百萬條記錄)。表中的列表示A現在是這樣的: id,道路名稱,lat,lon其中id是自動增量PK。在使用CONCAT/GROUP CONCAT的mysql中組合多行
當前1道路名稱可以在表中有多個條目,因爲每條道路都映射到若干(經度,緯度)組合。
我想要做的是將道路名稱作爲主鍵,然後刪除lat和lon列。然後添加一個類型爲Geometry的列,該列將包含代表道路的(lat - lon)點列表。
我可以很容易地在java + mysql中做到這一點,但我想知道的是,如果有一種方法可以通過編寫幾個嵌套查詢來輕鬆完成此操作?基本上我已經有一個填充表A和另一個表B,只有道路名稱PK和幾何類型的第二列。我想要的是結合所有經緯度,每個獨特的道路名稱lon到幾何點列表並插入到表B.是否有可能在MySQL中做到這一點?
注意:不要擔心道路名稱的唯一性,因爲這僅僅是一個示例,而不是實際的場景。謝謝!
更新:concat/group_concat函數返回一個String。由於我的列類型是Geometry,我只是將此字符串傳遞給MySQL Spatial Extension中的GeomFromText()空間函數以獲取幾何格式。
THanks Gordon,正是我在找的東西。 – kriver