> For the complete documentation index, see [llms.txt](https://mariadb.com/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://mariadb.com/docs/server/reference/sql-statements/geometry-constructors/geometry-relations/crosses.md).

# CROSSES

## Syntax

```bnf
Crosses(g1,g2)
```

## Description

Returns `1` if `g1` spatially crosses `g2`. Returns `NULL` if `g1` is a [Polygon](/docs/server/reference/sql-statements/geometry-constructors/geometry-constructors/polygon.md) or a [MultiPolygon](/docs/server/reference/sql-statements/geometry-constructors/geometry-constructors/multipolygon.md), or if `g2` is a [Point](/docs/server/reference/sql-statements/geometry-constructors/geometry-constructors/point.md) or a [MultiPoint](/docs/server/reference/sql-statements/geometry-constructors/geometry-constructors/multipoint.md). Otherwise, returns `0`.

The term spatially crosses denotes a spatial relation between two given geometries that has the following properties:

* The two geometries intersect.
* Their intersection results in a geometry that has a dimension that is one less than the maximum dimension of the two given geometries.
* Their intersection is not equal to either of the two given geometries.

`CROSSES()` is based on the original MySQL implementation, and uses object bounding rectangles, while [ST\_CROSSES()](/docs/server/reference/sql-statements/geometry-constructors/geometry-relations/st-crosses.md) uses object shapes.

<sub>*This page is licensed: GPLv2, originally from*</sub> [<sub>*fill\_help\_tables.sql*</sub>](https://github.com/MariaDB/server/blob/main/scripts/fill_help_tables.sql)

{% @marketo/form formId="4316" %}
