包含算子

判断左侧对象的外包框是否在指定维度上包含右侧对象的外包框。

语法

{geometry, trajectory, boxndf} /@>/ {geometry, trajectory, boxndf}
{trajectory, boxndf} #@># {trajectory, boxndf}
{geometry, trajectory, boxndf} @> {geometry, trajectory, boxndf}
{geometry, trajectory, boxndf} @/> {geometry, trajectory, boxndf}
{trajectory, boxndf} @#> {trajectory, boxndf}
{trajectory, boxndf} @/#> {trajectory, boxndf}

参数

参数名称

描述

算子左侧参数

包含对象。

算子右侧参数

被包含对象。

描述

判断左侧对象的外包框(由ST_MakeBox函数生成的BoxNDF类型)是否在指定的维度上包含右侧对象的外包框,与被包含算子含义相反。

支持的包含算子如下:

  • /@>/:左侧z维度包含右侧z维度。

  • #@>#:左侧t维度包含右侧t维度。

  • @>:左侧xy二维空间包含右侧xy二维空间。

  • @&>:左侧xyz三维空间包含右侧xyz三维空间。

  • @#>:左侧xyt二维时空包含右侧xyt二维时空。

  • @/#>:左侧xyzt三维时空包含右侧xyzt三维时空。

示例

WITH box AS(
    SELECT ST_MakeBox3dt(0,0,0, '2010-01-01 00:00:00',10,10,10, '2012-01-01 00:00:00') a,
           ST_MakeBox3dt(6,6,3,'2010-01-01 00:00:00',8,8,5,'2013-01-01 00:00:00') b
)
SELECT a /@>/ b AS OpZ, a #@># b AS OpT, a @> b AS Op2D, a @/> b AS Op3D, a @#> b AS Op2DT, a @/#> b AS Op3DT from box;
 opz | opt | op2d | op3d | op2dt | op3dt 
-----+-----+------+------+-------+-------
 t   | f   | t    | t    | f     | f