- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个规划应用程序表,我正在尝试将最近的 5 个应用程序返回到一个属性,通过 PHP 返回的 Postgres 查询按最近到最远的距离排序作为 JSON 数组。
结果已成功返回,但它们的排序似乎不正确。起初我以为是因为 ST_Distance 的结果值是 float ,所以将它们转换为整数,但它们仍然没有按距离返回记录。
这个 SQL 有什么明显的错误吗?
// Search the database for all similar items
$sql = pg_query($conn, "SELECT DISTINCT b.reference, b.application_number, b.site_address, b.proposal, cast((st_distance(a.geom, b.geom)) as integer) as dist FROM addresses.llpg_standard a, planning.planning_applications_current b WHERE a.uprn = $query ORDER BY dist ASC LIMIT 5");
$array = array();
我的查询结果如下,你可以看到'dist'值不排序......
[
{
"reference": "228028",
"application_number": "RU.17\/1320",
"site_address": "64 The Avenue\r\nEgham\r\nTW20 9AD",
"proposal": "Application seeking approval of details pursuant to condiitions 2 (Materials), 3 (Surfacing Materials), 4 (Tree Portection), 10 (Construction Transport Management Plan), 12 (Travel Plan), 13 (Construction Management Plan), 21 (Gas Prroof Membrane), 23 (Archaeology), (24( Flood Risk Management Plan), 28 (CEMP) of planning permission RU.16\/1453 (80 bed Care Home, Ancillary facilities and retention of 64 The Avenue).",
"dist": "120"
},
{
"reference": "228568",
"application_number": "RU.17\/1303",
"site_address": "64 The Avenue\r\nEGHAM\r\nTW20 9AD",
"proposal": "Proposed three storey 80 bed care home with ancillary facilities in the roof space.",
"dist": "120"
},
{
"reference": "233449",
"application_number": "RU.17\/1820",
"site_address": "Egham Leisure Centre\r\nVicarage Road\r\nEGHAM\r\nTW20 8NL",
"proposal": "Variation of conditions 2 (approved plans), 5 ( Sustainable Drainage Plan) and 29 ( Flood Risk Assessment) of RU.17\/0488",
"dist": "280"
},
{
"reference": "236908",
"application_number": "RU.18\/0089",
"site_address": "Egham Leisure Centre\r\nVicarage Road\r\nEGHAM\r\nTW20 8NL",
"proposal": "Details pursuant to Condition 28 (Replacement Temporary Bin Storage) of planning permission RU.17\/0488 (Demolition of existing leisure centre and erection of replacement leisure centre (Use Class D2); with 1no. outdoor synthetic sports pitch with associated fencing and lighting columns; new service access off Vicarage Road; alterations to the existing car park including overflow area; landscaping and public realm works; installation of a substation; and associated works). ",
"dist": "280"
},
{
"reference": "239748",
"application_number": "RU.18\/0388",
"site_address": "1 Vicarage Crescent\r\nEGHAM\r\nTW20 9JP",
"proposal": "Proposed lawful development Certificate to establish whether planning permission is required for a rear extension",
"dist": "18"
}
]
最佳答案
如果您负担得起直接从数据库中检索 JSON:
基于如下表结构...
CREATE TEMPORARY TABLE tmp_geo (id SERIAL, geom GEOMETRY);
...包含以下记录...
id | geom
----+----------------------------
1 | POINT(14.0025 51.056388)
2 | POINT(14.57249 52.04263)
3 | POINT(10.7809 51.983199)
4 | POINT(14.114722 51.067777)
5 | POINT(14.14779 51.28735)
6 | POINT(10.546666 51.506111)
7 | POINT(14.650439 51.88293)
8 | POINT(9.82623 48.215339)
9 | POINT(14.408049 52.700519)
10 | POINT(8.47574 51.023049)
... 使用以下 SQL 查询 ...
SELECT row_to_json(j)
FROM (
SELECT id,CAST(ST_Distance(ST_GeomFromText('POINT(50.12 8.69)',4326),geom) AS INTEGER) AS dist
FROM tmp_geo
ORDER BY dist ASC
) j;
...您可以获得完美有序的 JSON 输出:
row_to_json
---------------------
{"id":4,"dist":56}
{"id":7,"dist":56}
{"id":2,"dist":56}
{"id":8,"dist":56}
{"id":5,"dist":56}
{"id":1,"dist":56}
{"id":9,"dist":57}
{"id":6,"dist":58}
{"id":3,"dist":58}
{"id":10,"dist":59}
关于sql - PostGIS 按 ST_Distance 排序 - 不按距离排序记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49175892/
A是不同元素的序列,B是A的子序列,A-B是A中的所有元素,但不是B中的所有元素距离(A) = 总和|a(i)-a(i+1)|从 i=1 到 n-1找到一个子序列 B 使得 Dist(B)+Dist(
我想通过计算每对中所有(多维)点集之间距离的平均值来量化组相似性。 我可以很容易地手动为每对组手动完成此操作,如下所示: library(dplyr) library(tibble) library(
在 OpenXML 中用于指定大小或 X、Y 坐标的度量单位是什么? (介绍)。 将那些与像素匹配是否有意义,如果是这样,那些如何转换为像素? graphicFrame.Transform = new
我想知道是否有人可以帮助我替换过渡层中的值。 如果我尝试: transitionlayer[transitionlayer >= 0.14] = 0.14 : comparison (5) is
我在 firebase 中有一个列表,其中包括地理位置(经度和纬度),并且我想获得距给定坐标最近的 10 个位置。 我正在从 MySQL 过渡,在那里我将计算 SELECT 中的距离, 并在 ORDE
如何在 Python 中根据 2 个 GPS 坐标计算速度、距离和方向(度)?每个点都有纬度、经度和时间。 我在这篇文章中找到了半正矢距离计算: Calculate distance between
关闭。这个问题需要多问focused 。目前不接受答案。 想要改进此问题吗?更新问题,使其仅关注一个问题 editing this post . 已关闭 6 年前。 Improve this ques
我只想使用 matplotlib 标记两条曲线之间发生最大偏差的位置。请帮助我。 垂直距离适用于 Kolmogorov–Smirnov test import numpy as np %matplot
我有一个包含数万行重复项的文件。我想根据行号找到重复项之间的平均时间/距离。 例如:(其中第一列是行号) 1 string1 2 string2 3 string2 4 string1 5 strin
用公式speed=distance/time计算时间 但时间总是0我的输入是 distance=10 和 speed=5 我的输出必须 = 2 #include int main() { in
我正在使用 Levenshtein 算法来查找两个字符串之间的相似性。这是我正在制作的程序的一个非常重要的部分,因此它需要有效。问题是该算法没有发现以下示例相似: CONAIR AIRCON 算法给出
对于一个房地产网站,我需要实现一个允许搜索文本和距离的搜索机制。 当 lat 和 lon 记录在单独的列中时,在 MySQL 表上进行距离计算很容易,但房子往往有 LOT true/false 属性。
是否可以在触发前更改 UIPanGestureRecognizer 的距离?目前的实现似乎在触发前有 5-10 像素的距离余量,我想降低它如果可能的话。 原因是我将 UIPanGestureRecog
我试图找到两个网格之间的偏差。例如在 3d 空间中定义的两组点之间的差异,我计划使用一些 3d 可视化工具来可视化距离,例如QT3d 或一些基于开放式 gl 的库。 我有两组网格,基本上是两个 .ST
所以,我有这个函数可以快速返回两个字符串之间的 Levenshtein 距离: Function Levenshtein(ByVal string1 As String, ByVal string2
我正在尝试用字典创建一个光学字符识别系统。 事实上,我还没有实现字典=) 我听说有一些基于 Levenstein 距离的简单指标,这些指标考虑了不同符号之间的不同距离。例如。 'N' 和 'H' 彼此
我在PostGIS数据库(-4326)中使用经纬度/经度SRID。我想以一种有效的方式找到最接近给定点的点。我试图做一个 ORDER BY ST_Distance(point, ST_GeomF
我想从线串的一端开始提取沿线串已知距离处的点的坐标。 例如: library(sf) path % group_by(L1) %>% summarise(do_union =
我已经编写了这些用于聚类基于序列的数据的函数: library(TraMineR) library(cluster) clustering <- function(data){ data <- s
是否可以设置 UILabel 的行之间的距离,因为我有一个 UILabel 包含 3 行,并且换行模式是自动换行? 最佳答案 如果您指的是“前导”,它指的是类型行之间的间隙 - 您无法在 UILabe
我是一名优秀的程序员,十分优秀!