# 1 geo.area

Returns the area of a 2D polygon.

<geo.area>
<geom_column /> *
</geo.area>
Example
Copy
<select>
<columns>
<geo.area tol='4326' unit='SQ_KM'>a.the_geom</geo.reverseLine>
</columns>
<from table='buildings' alias='a' />
</select>

# 2 geo.distanceCartesian

Calculate the Cartesian distance between two geometric objects. The distance between two geometric objects is the distance between the closest points or segments between both objects.

<geo.distanceCartesian
ora_tol='ora_tol'
ora_unit='M|KM|CM|MM|MILE|NAUT_MILE|FOOT|INCH|SQ_KM...'
>
<geom1> *
<geom1 /> *
</geom1>
<geom2> *
<geom1 /> *
</geom2>
</geo.distanceCartesian>
Example
Copy
<select>
<columns>
<geo.distanceCartesian ora_tol='0.004' ora_unit='KM'>
<geom1>a.the_geom</geom1>
<geom2>a.the_geom</geom2>
</geo.distanceCartesian>
</columns>
<from table='points' alias='a' >
<join table='points' alias='b'>
</join>
</from>
<where>
a.id = 134 AND b.id = 24356
</where>
</select>

# 3 geo.distanceSphere

Returns the linear distance between two lat/long points located on a perfect sphere of radius = 6370986m. It is faster than geo.distanceSpheroid but less accurate.

<geo.distanceSphere
ora_tol='ora_tol'
ora_unit='M|KM|CM|MM|MILE|NAUT_MILE|FOOT|INCH|SQ_KM...'
>
<geom1> *
<geom1 /> *
</geom1>
<geom2> *
<geom1 /> *
</geom2>
</geo.distanceSphere>
Example
Copy
<select>
<columns>
<geo.distanceSphere ora_tol=''>
<geom1>a.the_geom</geom1>
<geom2>a.the_geom</geom2>
</geo.distanceSphere>
</columns>
<from table='points' alias='a' >
<join table='points' alias='b'>
</join>
</from>
<where>
a.name = 'Barcelona' AND b.name = 'London'
</where>
</select>

# 4 geo.distanceSpheroid

Returns the linear distance between two lat/long points located on the indicated spheroid.

<geo.distanceSpheroid
ora_tol='ora_tol'
ora_unit='M|KM|CM|MM|MILE|NAUT_MILE|FOOT|INCH|SQ_KM...'
>
<geom1> *
<geom1 /> *
</geom1>
<geom2> *
<geom1 /> *
</geom2>
<spheroid /> *
</geo.distanceSpheroid>
Example
Copy
<select>
<columns>
<geo.distanceSpheroid ora_tol='0.005'>
<geom1>a.the_geom</geom1>
<geom2>a.the_geom</geom2>
<spheroid> 'SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]]'</spheroid>
</geo.distanceSpheroid>
</columns>
<from table='points' alias='a' >
<join table='points' alias='b'>
</join>
</from>
<where>
a.name = 'Barcelona' AND b.name = 'London'
</where>
</select>

# 5 geo.length

Returns the linear distance between two lat/long points located on the indicated spheroid.

<geo.length
ora_tol='ora_tol'
ora_unit='M|KM|CM|MM|MILE|NAUT_MILE|FOOT|INCH|SQ_KM...'
>
<geometry_column /> *
</geo.length>
Example
Copy
<select>
<columns>
<geo.length ora_tol='0.005'>a.the_geom</geo.length>
</columns>
<where>
a.name = 'A-7'
</where>
</select>

# 6 geo.lengthSpheroid

Returns the length of a line on the indicated spheroid.

<geo.lengthSpheroid
ora_tol='ora_tol'
ora_unit='M|KM|CM|MM|MILE|NAUT_MILE|FOOT|INCH|SQ_KM...'
>
<geom1> *
<geom1 /> *
</geom1>
<geom2> *
<geom1 /> *
</geom2>
<spheroid /> *
</geo.lengthSpheroid>
Example
Copy
<select>
<columns>
<geo.lengthSpheroid ora_tol='0.005'>
<geom1>a.the_geom</geom1>
<spheroid> 'SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]]'</spheroid>
</geo.distanceSpheroid>
</columns>
<from table='points' alias='a' >
<join table='points' alias='b'>
</join>
</from>
<where>
a.name = 'Barcelona' AND b.name = 'London'
</where>
</select>

# 7 geo.perimeter

Returns the perimeter of the geometric object of the argument received by function (geometric column).

<geo.perimeter
pg_dim='2|3'
ora_tol='ora_tol'
ora_unit='M|KM|CM|MM|MILE|NAUT_MILE|FOOT|INCH|SQ_KM...'
>
<geometry_column /> *
</geo.perimeter>
Example
Copy
<select>
<columns>
<geo.perimeter ora_tol='0.005' pg_dim='3' ora_unit='3'>a.the_geom</geo.perimeter>
</columns>
<from table='buildings' alias='a' />
<where>
a.name = 'MACBA'
</where>
</select>

# 8 geo.centroid

Returns the geometric center of a geometry or a set of geometries. The geometry must be one or a set of POINTS, POLYGON or MULTIPOLYGON.

<geo.centroid ora_tol='ora_tol'>
<geometry_column /> *
</geo.centroid>
Example
Copy
<select>
<columns>
<geo.centroid ora_tol='0.005'>a.the_geom</geo.centroid>
</columns>
<from table='buildings' alias='a' />
<where>
a.name = 'MACBA'
</where>
</select>

# 9 geo.withinDist

Returns the geometric center of a geometry or set of geometries. The geometry must be one or a set of POINTS, POLYGON or MULTIPOLYGON.

<geo.withinDist
ora_operator='y'
ora_tol='ora_tol'
ora_unit='M|KM|CM|MM|MILE|NAUT_MILE|FOOT|INCH|SQ_KM...'
>
<geom1> *
<geom1 /> *
</geom1>
<geom2> *
<geom1 /> *
</geom2>
<spheroid /> *
</geo.withinDist>
Example
Copy
<select>
<columns>
<geo.withinDist ora_unit='KM' ora_tol='' ora_operator='y'>
<geom1>geometry_col_1</geom1>
<geom2>geometry_col_2</geom2>
<dist>10</dist>
</geo.withinDist>
</columns>
<from table='buildings' alias='a' />
<where>
a.name = 'MACBA'
</where>
</select>