## Name

ST_Touches — Tests if two geometries have at least one point in common,
but their interiors do not intersect.

## Synopsis

`boolean `**ST_Touches**(

geometry
`A`, geometry
`B``)`

;

## Description

Returns `TRUE`

if A and B intersect,
but their interiors do not intersect. Equivalently, A and B have at least one point in common,
and the common points lie in at least one boundary.
For Point/Point inputs the relationship is always `FALSE`

,
since points do not have a boundary.

In mathematical terms, this relationship is:

This relationship holds if the DE-9IM Intersection Matrix for the two geometries matches one of:

FT*******

F**T*****

F***T****

| |
---|

This function automatically includes a bounding box comparison
that makes use of any spatial indexes that are available on the geometries.
To avoid using an index, use `_ST_Touches` instead. |

| |
---|

Enhanced: 3.0.0 enabled support for `GEOMETRYCOLLECTION` |

This method implements the OGC Simple Features
Implementation Specification for SQL 1.1. s2.1.1.2 // s2.1.13.3

This method implements the SQL/MM specification. SQL-MM 3: 5.1.28

## Examples

The `ST_Touches`

predicate returns `TRUE`

in the following examples.

SELECT ST_Touches('LINESTRING(0 0, 1 1, 0 2)'::geometry, 'POINT(1 1)'::geometry);
st_touches
------------
f
(1 row)
SELECT ST_Touches('LINESTRING(0 0, 1 1, 0 2)'::geometry, 'POINT(0 2)'::geometry);
st_touches
------------
t
(1 row)