## 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`)`;

## Descripción

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: ST_Touches(A, B) ⇔ (Int(A) ⋂ Int(B) = ∅) ∧ (A ⋂ B ≠ ∅)

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

## Ejemplos

The `ST_Touches` predicate returns `TRUE` in the following examples.

 `POLYGON` / `POLYGON` `POLYGON` / `POLYGON` `POLYGON` / `LINESTRING` `LINESTRING` / `LINESTRING` `LINESTRING` / `LINESTRING` `POLYGON` / `POINT`
```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)```