PostGIS 行作为十六进制 WKT 插入 Postgres

http://img2.mukewang.com/62b91afc0001e89517841175.jpg

如以下函数所示,我正在尝试将行插入building表中。一切正常,只是坐标不是保存为普通文本,而是保存为 WKB(如屏幕截图和示例所示)。


func (db Database) SaveBuildings(buildings overpass.Result) error {

    tx, err := db.pool.Begin(context.Background())

    if err != nil {

        return err

    }

    defer tx.Rollback(context.Background())

    for _, building := range buildings.Nodes {

        _, err = tx.Exec(context.Background(), `INSERT INTO building (coordinate, type, variation) VALUES(ST_SetSRID(ST_MakePoint($1, $2),4326), $3, $4)`, building.Lon, building.Lat, "industrial", "brick")

    }

    if err != nil {

        return err

    }

    err = tx.Commit(context.Background())

    return err

}


Building表格样本

uuid                                |coordinate                                        |type      |variation|

------------------------------------|--------------------------------------------------|----------|---------|

dff2f9a3-03f1-477c-8b3e-9c6708d97519|0101000020E610000028637C98BDE63B4092301D84CAE04740|industrial|brick    |

7b6b619a-8c0f-4a3d-b098-d878a2b1d152|0101000020E6100000EFE2FDB8FDE43B4085AC133C2AE04740|industrial|brick    |

efd68a88-a349-4f1b-9406-23920031701f|0101000020E6100000D7C3F24295E53B40A538FD8F02E04740|industrial|brick    |

3b9bfc69-9dbc-42f5-a80d-615b972da3a2|0101000020E610000085E39E5335EA3B40B1FD648C0FE14740|industrial|brick    |

19e798d9-5ce7-47e4-aea0-0eb039805269|0101000020E6100000CD48731A58E73B40A76384A6DBDF4740|industrial|brick    |

c99ab27c-a205-460c-8371-8306895fcd8b|0101000020E610000091FF136DD8E63B40E5492DEF05E04740|industrial|brick    |

f9aabf00-c3aa-4a45-8c15-5b538390b807|0101000020E6100000E2395B4068E53B403A98A839D4E04740|industrial|brick    |

a866e708-6438-4524-b257-e3f7f84b7027|0101000020E610000077B6ECB545E63B400B067C235FE04740|industrial|brick    |



湖上湖
浏览 164回答 1
1回答

HUH函数

WKB只是 Postgres 处理点的表示。其实很好!想象一下,您将所有这些点存储为文本,那么您将如何对它们进行计算,例如聚类或计算它们之间的距离?要以您想要的方式获取它们的值,只需使用SELECT uuid, ST_ASTEXT(coordinate) as coordinate_wkt FROM building
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go