我有一个案例要求,我需要找到最近提供特定产品类型的N个供应商。 int范围中的类型为0..1048575,表示层次结构。任何供应商都可以拥有多个点,因为它们可以提供多种产品类型。
我可以存储长和& lat在PostGIS中和索引的int数组列中的类型,以及对两者的查询,其限制为N.但是,我不相信这会有效,因为我不确定PostgreSQL是否会使用这两个索引。
我的另一个想法是将类型存储在第三个“垂直”维度中。这将在长时间和长时间处形成堆叠的“垂直”形状段。每个供应商的纬度形状。要查询,我会得到最近的长和& lat相交,它与第三维上所需的类型相交。
这可以用PostGIS使用说3DM吗?换句话说,我可以仅使用long和lat来计算最近邻居,但是使用交叉点的所有3个维度?