This topic describes the INTERSECT operators. These operators are used to check whether the bounding box of the left operand-specified object intersects with the bounding box of the right operand-specified object in a specified dimension.
Syntax
{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}
Parameters
Parameter | Description |
---|---|
Left operand | The object whose bounding box you want to compare. |
Right operand | The object whose bounding box you want to compare. |
Description
The INTERSECT operators allow you to check whether the bounding box of the left operand-specified object intersects with the bounding box of the right operand-specified object in a specified dimension. These bounding boxes are generated by the ST_MakeBox function. For more information, see ST_MakeBox.
The following INTERSECT operators are supported:
/&/
: checks whether the bounding boxes of two objects intersect in the z dimension.#&#
: checks whether the bounding boxes of two objects intersect in the t dimension.&&
: checks whether the bounding boxes of two objects intersect in the x and y dimensions.&/&
: checks whether the bounding boxes of two objects intersect in the x, y, and z dimensions.&#&
: checks whether the bounding boxes of two objects intersect in the x, y, and t dimensions.&/#&
: checks whether the bounding boxes of two objects intersect in the x, y, z, t, and t dimensions.
Example
WITH box AS(
SELECT ST_MakeBox3d(0,0,0,5,5,5) a,
ST_MakeBox3dt(6,6, 3,'2010-04-12 00:00:00',8,8,5,'2013-02-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 | t | f | f | f | f