gpt4 book ai didi

postgresql - 几何类型从数据库中读取为字符串

转载 作者:行者123 更新时间:2023-12-03 22:37:40 25 4
gpt4 key购买 nike

我有以下带有几何字段的模型:

const soiSchema = {
siteId: {
type: DataTypes.BIGINT,
allowNull: false,
primaryKey: true,
field: 'site_id'
},
soiId: {
type: DataTypes.BIGINT,
allowNull: false,
field: 'soi_id'
},
geoPoint: {
type: DataTypes.GEOMETRY('POINT'),
allowNull: false,
field : 'geopoint'
}
}

我在带有以下选项的原始查询中使用此模型:
 await sequelize.query(query,{
model : Soi,
raw : true,
bind : params,
mapToModel: true
})

我的问题:当我查询我的 postgres 数据库时,我将地理点作为 '0101000020E610000000A172ECBF844140CCC38A7B66D93F40' 示例的字符串接收,而不是作为一个点。 db 中的字段确实是几何类型,但 sequelize 将其作为字符串读取。
任何人都有解决方法?
我尝试了许多不同的 Sequelize 版本,但没有帮助解决问题
谢谢

最佳答案

尝试使用适当的 ST_function 来读取几何数据类型:

SELECT ST_AsText(geoPoint) FROM your_table

https://postgis.net/docs/PostGIS_Special_Functions_Index.html

你可以得到 lng, lt as
SELECT ST_X(geoPoint), ST_Y(geoPoint), ST_AsText(geoPoint) 
FROM your_table;

关于postgresql - 几何类型从数据库中读取为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56721363/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com