从ST_MinimumBoundingRadius中选择半径

时间:2018-02-18 15:33:23

标签: postgresql postgis

我想从ST_MinimumBoungingRadius获得半径值。 这样的东西(来自postgresql文档)可以正常工作:

    .in {
    text-align: center;
}


.goal {
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    -ms-transition: all 1s ease;
    transition: all 1s ease;
}

.selected {
        -webkit-filter: grayscale(100%);
        filter: grayscale(100%);
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.pic {
    border: 2px solid #fff;
    float: left;
    height: 100px;
    width: 100px;
    margin: 20px;
    overflow: hidden;
    -webkit-box-shadow: 5px 5px 5px #111;
    box-shadow: 5px 5px 5px #111;
}

所以我不明白,为什么现有的表上没有类似的查询:

$(document).ready(function () {

    $(".in").hover(function () {
        $(".in").removeClass('selected');
        $(this).addClass("selected");
    });  
});

此查询的结果为ERROR:列“radius”不存在

有没有办法提取半径值?

1 个答案:

答案 0 :(得分:0)

difference是在第一种情况下,您在FROM子句中调用该函数,而在第二种情况下,它在select子句中。在第一种情况下,结果由两列组成,而在后一种情况下,它是所有列的string聚合。

您可以再次使用FROM子句中的函数,使用either双括号或横向连接来修复它:

SELECT radius 
FROM ST_MinimumBoundingRadius((SELECT ST_Collect(geom) 
                                FROM a)) minrad;

SELECT radius
FROM (SELECT ST_Collect(geom) geom FROM a) tbla,
    LATERAL ST_MinimumBoundingRadius(tbla.geom) minrad;