{"title":"GIS QuerySet API 参考","version":"4.2","locale":"zh-hans","docname":"ref/contrib/gis/geoquerysets","url":"/zh-hans/4.2/ref/contrib/gis/geoquerysets/","canonical":"https://djangodocs.dev/zh-hans/4.2/ref/contrib/gis/geoquerysets/","summary":"空间查找 Link to this heading # 这个部分中的空间查找适用于 GeometryField 和 RasterField 。 有关介绍，请参见 空间查找引言 。要查看与特定空间后端兼容的查找方式的概述，请参考 空间查找兼容性表 。 栅格查找方式 Link to this heading #…","html":"<h1>GIS QuerySet API 参考<a class=\"heading-anchor\" href=\"#gis-queryset-api-reference\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h1>\n<section id=\"spatial-lookups\">\n<span id=\"id1\"></span><h2>空间查找<a class=\"heading-anchor\" href=\"#spatial-lookups\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p>这个部分中的空间查找适用于 <a class=\"reference internal\" href=\"/zh-hans/4.2/ref/contrib/gis/model-api/#django.contrib.gis.db.models.GeometryField\" title=\"django.contrib.gis.db.models.GeometryField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">GeometryField</span></code></a> 和 <a class=\"reference internal\" href=\"/zh-hans/4.2/ref/contrib/gis/model-api/#django.contrib.gis.db.models.RasterField\" title=\"django.contrib.gis.db.models.RasterField\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">RasterField</span></code></a>。</p>\n<p>有关介绍，请参见 <a class=\"reference internal\" href=\"/zh-hans/4.2/ref/contrib/gis/db-api/#spatial-lookups-intro\"><span class=\"std std-ref\">空间查找引言</span></a>。要查看与特定空间后端兼容的查找方式的概述，请参考 <a class=\"reference internal\" href=\"/zh-hans/4.2/ref/contrib/gis/db-api/#spatial-lookup-compatibility\"><span class=\"std std-ref\">空间查找兼容性表</span></a>。</p>\n<section id=\"lookups-with-rasters\">\n<h3>栅格查找方式<a class=\"heading-anchor\" href=\"#lookups-with-rasters\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>参考下面的文档中，所有示例都是针对几何字段和输入的，但是查找方式可以在两侧都以相同的方式用于栅格。每当某个查找方式不支持栅格输入时，输入将自动转换为几何，必要时使用 <a class=\"reference external\" href=\"https://postgis.net/docs/RT_ST_Polygon.html\">ST_Polygon</a> 函数。还请参阅 <a class=\"reference internal\" href=\"/zh-hans/4.2/ref/contrib/gis/db-api/#spatial-lookup-raster\"><span class=\"std std-ref\">栅格查找引言</span></a>。</p>\n<p>查找方式使用的数据库运算符可以分为三类：</p>\n<ul class=\"simple\">\n<li><p>本地栅格支持 <code class=\"docutils literal notranslate\"><span class=\"pre\">N</span></code>：该运算符在查找的两侧都可以本地接受栅格，并且可以混合使用栅格输入和几何输入。</p></li>\n<li><p>双向栅格支持 <code class=\"docutils literal notranslate\"><span class=\"pre\">B</span></code>：该运算符仅在查找的两侧都接收栅格输入时支持栅格。对于混合查找，栅格数据会自动转换为几何数据。</p></li>\n<li><p>几何转换支持 <code class=\"docutils literal notranslate\"><span class=\"pre\">C</span></code>：该查找方式不支持原生栅格，所有栅格数据都会自动转换为几何数据。</p></li>\n</ul>\n<p>以下示例展示了不同类型栅格支持的查找方式的 SQL 等效方式。相同的模式适用于所有空间查找方式。</p>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>案例</p></th>\n<th class=\"head\"><p>查找</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>N, B</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">rast__contains=rst</span></code></p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Contains(rast,</span> <span class=\"pre\">rst)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>N, B</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">rast__1__contains=(rst,</span> <span class=\"pre\">2)</span></code></p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Contains(rast,</span> <span class=\"pre\">1,</span> <span class=\"pre\">rst,</span> <span class=\"pre\">2)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>B, C</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">rast__contains=geom</span></code></p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Contains(ST_Polygon(rast),</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>B, C</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">rast__1__contains=geom</span></code></p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Contains(ST_Polygon(rast,</span> <span class=\"pre\">1),</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>B, C</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">poly__contains=rst</span></code></p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Contains(poly,</span> <span class=\"pre\">ST_Polygon(rst))</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>B, C</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">poly__contains=(rst,</span> <span class=\"pre\">1)</span></code></p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Contains(poly,</span> <span class=\"pre\">ST_Polygon(rst,</span> <span class=\"pre\">1))</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>C</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">rast__crosses=rst</span></code></p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Crosses(ST_Polygon(rast),</span> <span class=\"pre\">ST_Polygon(rst))</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>C</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">rast__1__crosses=(rst,</span> <span class=\"pre\">2)</span></code></p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Crosses(ST_Polygon(rast,</span> <span class=\"pre\">1),</span> <span class=\"pre\">ST_Polygon(rst,</span> <span class=\"pre\">2))</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>C</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">rast__crosses=geom</span></code></p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Crosses(ST_Polygon(rast),</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>C</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">poly__crosses=rst</span></code></p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Crosses(poly,</span> <span class=\"pre\">ST_Polygon(rst))</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<p>仅支持在 PostGIS 后端（在本节中称为 PGRaster）中使用栅格进行空间查找。</p>\n</section>\n<section id=\"bbcontains\">\n<span id=\"std-fieldlookup-bbcontains\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">bbcontains</span></code><a class=\"heading-anchor\" href=\"#bbcontains\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Geometry_Contain.html\">PostGIS</a>, MariaDB, MySQL, SpatiaLite, PGRaster (Native)</p>\n<p>测试几何或栅格字段的边界框是否完全包含查找几何的边界框。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__bbcontains</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">poly</span> <span class=\"pre\">~</span> <span class=\"pre\">geom</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">MBRContains(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">MBRContains(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">MbrContains(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"bboverlaps\">\n<span id=\"std-fieldlookup-bboverlaps\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">bboverlaps</span></code><a class=\"heading-anchor\" href=\"#bboverlaps\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/geometry_overlaps.html\">PostGIS</a>, MariaDB, MySQL, SpatiaLite, PGRaster (Native)</p>\n<p>测试几何字段的边界框是否与查找几何的边界框重叠。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__bboverlaps</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">poly</span> <span class=\"pre\">&amp;&amp;</span> <span class=\"pre\">geom</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">MBROverlaps(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">MBROverlaps(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">MbrOverlaps(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"contained\">\n<span id=\"std-fieldlookup-contained\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">contained</span></code><a class=\"heading-anchor\" href=\"#contained\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Geometry_Contained.html\">PostGIS</a>, MariaDB, MySQL, SpatiaLite, PGRaster (Native)</p>\n<p>测试几何字段的边界框是否完全包含在查找几何的边界框内。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__contained</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">poly</span> <span class=\"pre\">&#64;</span> <span class=\"pre\">geom</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">MBRWithin(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">MBRWithin(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">MbrWithin(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"contains\">\n<span id=\"std-fieldlookup-gis-contains\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">contains</span></code><a class=\"heading-anchor\" href=\"#contains\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Contains.html\">PostGIS</a>, Oracle, MariaDB, MySQL, SpatiaLite, PGRaster (Bilateral)</p>\n<p>测试几何字段是否在空间上包含查找几何。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__contains</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Contains(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_CONTAINS(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Contains(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Contains(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Contains(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"contains-properly\">\n<span id=\"std-fieldlookup-contains_properly\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">contains_properly</span></code><a class=\"heading-anchor\" href=\"#contains-properly\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_ContainsProperly.html\">PostGIS</a>, PGRaster (Bilateral)</p>\n<p>如果查找几何与几何字段的内部相交但不与边界（或外部）相交，则返回 true。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__contains_properly</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_ContainsProperly(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"coveredby\">\n<span id=\"std-fieldlookup-coveredby\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">coveredby</span></code><a class=\"heading-anchor\" href=\"#coveredby\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_CoveredBy.html\">PostGIS</a>, Oracle, PGRaster (Bilateral), SpatiaLite</p>\n<p>测试几何字段中是否没有点位于查找几何的外部。 <a class=\"footnote-reference brackets\" href=\"#fncovers\" id=\"id2\" role=\"doc-noteref\"><span class=\"fn-bracket\">[</span>3<span class=\"fn-bracket\">]</span></a></p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__coveredby</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_CoveredBy(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_COVEREDBY(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">CoveredBy(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"covers\">\n<span id=\"std-fieldlookup-covers\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">covers</span></code><a class=\"heading-anchor\" href=\"#covers\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Covers.html\">PostGIS</a>, Oracle, PGRaster (Bilateral), SpatiaLite</p>\n<p>测试查找几何中是否没有点位于几何字段的外部。 <a class=\"footnote-reference brackets\" href=\"#fncovers\" id=\"id3\" role=\"doc-noteref\"><span class=\"fn-bracket\">[</span>3<span class=\"fn-bracket\">]</span></a></p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__covers</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Covers(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_COVERS(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Covers(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"crosses\">\n<span id=\"std-fieldlookup-crosses\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">crosses</span></code><a class=\"heading-anchor\" href=\"#crosses\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Crosses.html\">PostGIS</a>, MariaDB, MySQL, SpatiaLite, PGRaster (Conversion)</p>\n<p>测试几何字段是否在空间上与查找几何交叉。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__crosses</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Crosses(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Crosses(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Crosses(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Crosses(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"disjoint\">\n<span id=\"std-fieldlookup-disjoint\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">disjoint</span></code><a class=\"heading-anchor\" href=\"#disjoint\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Disjoint.html\">PostGIS</a>, Oracle, MariaDB, MySQL, SpatiaLite, PGRaster (Bilateral)</p>\n<p>测试几何字段是否在空间上与查找几何不相交。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__disjoint</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Disjoint(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_GEOM.RELATE(poly,</span> <span class=\"pre\">'DISJOINT',</span> <span class=\"pre\">geom,</span> <span class=\"pre\">0.05)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Disjoint(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Disjoint(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Disjoint(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"equals\">\n<span id=\"std-fieldlookup-equals\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">equals</span></code><a class=\"heading-anchor\" href=\"#equals\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Equals.html\">PostGIS</a>, Oracle, MariaDB, MySQL, SpatiaLite, PGRaster (Conversion)</p>\n<p>测试几何字段是否在空间上等于查找几何。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__equals</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Equals(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_EQUAL(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Equals(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Equals(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Equals(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"exact-same-as\">\n<span id=\"std-fieldlookup-same_as\"></span><span id=\"std-fieldlookup-exact-noindex\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">exact</span></code>, <code class=\"docutils literal notranslate\"><span class=\"pre\">same_as</span></code><a class=\"heading-anchor\" href=\"#exact-same-as\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Geometry_Same.html\">PostGIS</a>, Oracle, MariaDB, MySQL, SpatiaLite, PGRaster (Bilateral)</p>\n<p>测试几何字段是否在 Oracle、MySQL 和 SpatiaLite 上空间上等于查找几何，在 PostGIS 上它测试边界框的相等性。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">poly</span> <span class=\"pre\">~=</span> <span class=\"pre\">geom</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_EQUAL(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Equals(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Equals(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Equals(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"intersects\">\n<span id=\"std-fieldlookup-intersects\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">intersects</span></code><a class=\"heading-anchor\" href=\"#intersects\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Intersects.html\">PostGIS</a>, Oracle, MariaDB, MySQL, SpatiaLite, PGRaster (Bilateral)</p>\n<p>测试几何字段是否在空间上与查找几何相交。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__intersects</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Intersects(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_OVERLAPBDYINTERSECT(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Intersects(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Intersects(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Intersects(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"isempty\">\n<span id=\"std-fieldlookup-isempty\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">isempty</span></code><a class=\"heading-anchor\" href=\"#isempty\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<aside class=\"version-note version-added\" data-version=\"4.2\">\n<p class=\"version-note-title\">New in Django 4.2</p></aside>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_IsEmpty.html\">PostGIS</a></p>\n<p>测试几何是否为空。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__isempty</span><span class=\"o\">=</span><span class=\"kc\">True</span><span class=\"p\">)</span>\n</code></pre></div>\n</section>\n<section id=\"isvalid\">\n<span id=\"std-fieldlookup-isvalid\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">isvalid</span></code><a class=\"heading-anchor\" href=\"#isvalid\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: MySQL, <a class=\"reference external\" href=\"https://postgis.net/docs/ST_IsValid.html\">PostGIS</a>, Oracle, SpatiaLite</p>\n<p>测试几何是否有效。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__isvalid</span><span class=\"o\">=</span><span class=\"kc\">True</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>MySQL, PostGIS, SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_IsValid(poly)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_GEOM.VALIDATE_GEOMETRY_WITH_CONTEXT(poly,</span> <span class=\"pre\">0.05)</span> <span class=\"pre\">=</span> <span class=\"pre\">'TRUE'</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"overlaps\">\n<span id=\"std-fieldlookup-overlaps\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">overlaps</span></code><a class=\"heading-anchor\" href=\"#overlaps\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Overlaps.html\">PostGIS</a>, Oracle, MariaDB, MySQL, SpatiaLite, PGRaster (Bilateral)</p>\n<p>测试几何字段是否在空间上与查找几何重叠。</p>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Overlaps(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_OVERLAPS(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Overlaps(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Overlaps(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Overlaps(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"relate\">\n<span id=\"std-fieldlookup-relate\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">relate</span></code><a class=\"heading-anchor\" href=\"#relate\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Relate.html\">PostGIS</a>, MariaDB, Oracle, SpatiaLite, PGRaster (Conversion)</p>\n<p>测试几何字段是否与查找几何在给定模式中指定的值上存在空间关系。此查找方式需要一个元组参数，<code class=\"docutils literal notranslate\"><span class=\"pre\">(geom,</span> <span class=\"pre\">pattern)</span></code>； <code class=\"docutils literal notranslate\"><span class=\"pre\">pattern</span></code> 的形式将取决于空间后端：</p>\n<section id=\"mariadb-postgis-and-spatialite\">\n<h4>MariaDB、PostGIS  和 SpatiaLite<a class=\"heading-anchor\" href=\"#mariadb-postgis-and-spatialite\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h4>\n<p>在这些空间后端上，交集模式是一个包含九个字符的字符串，定义了几何字段的内部、边界和外部与查找几何之间的交集。交集模式矩阵只能使用以下字符：<code class=\"docutils literal notranslate\"><span class=\"pre\">1</span></code>、<code class=\"docutils literal notranslate\"><span class=\"pre\">2</span></code>、<code class=\"docutils literal notranslate\"><span class=\"pre\">T</span></code>、<code class=\"docutils literal notranslate\"><span class=\"pre\">F</span></code> 或 <code class=\"docutils literal notranslate\"><span class=\"pre\">*</span></code>。此查找方式允许用户“微调”与 DE-9IM 模型一致的特定几何关系。<a class=\"footnote-reference brackets\" href=\"#fnde9im\" id=\"id4\" role=\"doc-noteref\"><span class=\"fn-bracket\">[</span>1<span class=\"fn-bracket\">]</span></a></p>\n<p>几何示例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"c1\"># A tuple lookup parameter is used to specify the geometry and</span>\n<span class=\"c1\"># the intersection pattern (the pattern here is for &#39;contains&#39;).</span>\n<span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__relate</span><span class=\"o\">=</span><span class=\"p\">(</span><span class=\"n\">geom</span><span class=\"p\">,</span> <span class=\"s2\">&quot;T*T***FF*&quot;</span><span class=\"p\">))</span>\n</code></pre></div>\n<p>PostGIS 和 MariaDB 的 SQL 等效方式：</p>\n<div class=\"code-block\" data-language=\"sql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"k\">SELECT</span><span class=\"w\"> </span><span class=\"p\">...</span><span class=\"w\"> </span><span class=\"k\">WHERE</span><span class=\"w\"> </span><span class=\"n\">ST_Relate</span><span class=\"p\">(</span><span class=\"n\">poly</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"n\">geom</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"s1\">&#39;T*T***FF*&#39;</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>SpatiaLite 的 SQL 等效方式：</p>\n<div class=\"code-block\" data-language=\"sql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"k\">SELECT</span><span class=\"w\"> </span><span class=\"p\">...</span><span class=\"w\"> </span><span class=\"k\">WHERE</span><span class=\"w\"> </span><span class=\"n\">Relate</span><span class=\"p\">(</span><span class=\"n\">poly</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"n\">geom</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"s1\">&#39;T*T***FF*&#39;</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>栅格示例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__relate</span><span class=\"o\">=</span><span class=\"p\">(</span><span class=\"n\">rast</span><span class=\"p\">,</span> <span class=\"mi\">1</span><span class=\"p\">,</span> <span class=\"s2\">&quot;T*T***FF*&quot;</span><span class=\"p\">))</span>\n<span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">rast__2__relate</span><span class=\"o\">=</span><span class=\"p\">(</span><span class=\"n\">rast</span><span class=\"p\">,</span> <span class=\"mi\">1</span><span class=\"p\">,</span> <span class=\"s2\">&quot;T*T***FF*&quot;</span><span class=\"p\">))</span>\n</code></pre></div>\n<p>PostGIS 的 SQL 等效方式：</p>\n<div class=\"code-block\" data-language=\"sql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"k\">SELECT</span><span class=\"w\"> </span><span class=\"p\">...</span><span class=\"w\"> </span><span class=\"k\">WHERE</span><span class=\"w\"> </span><span class=\"n\">ST_Relate</span><span class=\"p\">(</span><span class=\"n\">poly</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"n\">ST_Polygon</span><span class=\"p\">(</span><span class=\"n\">rast</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">),</span><span class=\"w\"> </span><span class=\"s1\">&#39;T*T***FF*&#39;</span><span class=\"p\">)</span>\n<span class=\"k\">SELECT</span><span class=\"w\"> </span><span class=\"p\">...</span><span class=\"w\"> </span><span class=\"k\">WHERE</span><span class=\"w\"> </span><span class=\"n\">ST_Relate</span><span class=\"p\">(</span><span class=\"n\">ST_Polygon</span><span class=\"p\">(</span><span class=\"n\">rast</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"mi\">2</span><span class=\"p\">),</span><span class=\"w\"> </span><span class=\"n\">ST_Polygon</span><span class=\"p\">(</span><span class=\"n\">rast</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"mi\">1</span><span class=\"p\">),</span><span class=\"w\"> </span><span class=\"s1\">&#39;T*T***FF*&#39;</span><span class=\"p\">)</span>\n</code></pre></div>\n</section>\n<section id=\"oracle\">\n<h4>Oracle<a class=\"heading-anchor\" href=\"#oracle\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h4>\n<p>这里的关系模式由以下至少一个九个关系字符串组成：<code class=\"docutils literal notranslate\"><span class=\"pre\">TOUCH</span></code>、<code class=\"docutils literal notranslate\"><span class=\"pre\">OVERLAPBDYDISJOINT</span></code>、<code class=\"docutils literal notranslate\"><span class=\"pre\">OVERLAPBDYINTERSECT</span></code>、<code class=\"docutils literal notranslate\"><span class=\"pre\">EQUAL</span></code>、<code class=\"docutils literal notranslate\"><span class=\"pre\">INSIDE</span></code>、<code class=\"docutils literal notranslate\"><span class=\"pre\">COVEREDBY</span></code>、<code class=\"docutils literal notranslate\"><span class=\"pre\">CONTAINS</span></code>、<code class=\"docutils literal notranslate\"><span class=\"pre\">COVERS</span></code>、<code class=\"docutils literal notranslate\"><span class=\"pre\">ON</span></code> 和 <code class=\"docutils literal notranslate\"><span class=\"pre\">ANYINTERACT</span></code>。多个字符串可以用逻辑布尔运算符 OR 组合，例如 <code class=\"docutils literal notranslate\"><span class=\"pre\">'inside+touch'</span></code>。这些关系字符串不区分大小写。 <a class=\"footnote-reference brackets\" href=\"#fnsdorelate\" id=\"id5\" role=\"doc-noteref\"><span class=\"fn-bracket\">[</span>2<span class=\"fn-bracket\">]</span></a></p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__relate</span><span class=\"o\">=</span><span class=\"p\">(</span><span class=\"n\">geom</span><span class=\"p\">,</span> <span class=\"s2\">&quot;anyinteract&quot;</span><span class=\"p\">))</span>\n</code></pre></div>\n<p>Oracle 的 SQL 等效方式：</p>\n<div class=\"code-block\" data-language=\"sql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"k\">SELECT</span><span class=\"w\"> </span><span class=\"p\">...</span><span class=\"w\"> </span><span class=\"k\">WHERE</span><span class=\"w\"> </span><span class=\"n\">SDO_RELATE</span><span class=\"p\">(</span><span class=\"n\">poly</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"n\">geom</span><span class=\"p\">,</span><span class=\"w\"> </span><span class=\"s1\">&#39;anyinteract&#39;</span><span class=\"p\">)</span>\n</code></pre></div>\n</section>\n</section>\n<section id=\"touches\">\n<span id=\"std-fieldlookup-touches\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">touches</span></code><a class=\"heading-anchor\" href=\"#touches\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Touches.html\">PostGIS</a>, Oracle, MariaDB, MySQL, SpatiaLite</p>\n<p>测试几何字段是否在空间上与查找几何接触。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__touches</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Touches(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Touches(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Touches(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_TOUCH(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Touches(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"within\">\n<span id=\"std-fieldlookup-within\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">within</span></code><a class=\"heading-anchor\" href=\"#within\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Within.html\">PostGIS</a>, Oracle, MariaDB, MySQL, SpatiaLite, PGRaster (Bilateral)</p>\n<p>测试几何字段是否在空间上位于查找几何内部。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__within</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Within(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Within(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Within(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_INSIDE(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Within(poly,</span> <span class=\"pre\">geom)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"left\">\n<span id=\"std-fieldlookup-left\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">left</span></code><a class=\"heading-anchor\" href=\"#left\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Geometry_Left.html\">PostGIS</a>, PGRaster (Conversion)</p>\n<p>测试几何字段的边界框是否严格位于查找几何的边界框左侧。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__left</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>PostGIS 等效方式：</p>\n<div class=\"code-block\" data-language=\"sql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"k\">SELECT</span><span class=\"w\"> </span><span class=\"p\">...</span><span class=\"w\"> </span><span class=\"k\">WHERE</span><span class=\"w\"> </span><span class=\"n\">poly</span><span class=\"w\"> </span><span class=\"o\">&lt;&lt;</span><span class=\"w\"> </span><span class=\"n\">geom</span>\n</code></pre></div>\n</section>\n<section id=\"right\">\n<span id=\"std-fieldlookup-right\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">right</span></code><a class=\"heading-anchor\" href=\"#right\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Geometry_Right.html\">PostGIS</a>, PGRaster (Conversion)</p>\n<p>测试几何字段的边界框是否严格位于查找几何的边界框右侧。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__right</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>PostGIS 等效方式：</p>\n<div class=\"code-block\" data-language=\"sql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"k\">SELECT</span><span class=\"w\"> </span><span class=\"p\">...</span><span class=\"w\"> </span><span class=\"k\">WHERE</span><span class=\"w\"> </span><span class=\"n\">poly</span><span class=\"w\"> </span><span class=\"o\">&gt;&gt;</span><span class=\"w\"> </span><span class=\"n\">geom</span>\n</code></pre></div>\n</section>\n<section id=\"overlaps-left\">\n<span id=\"std-fieldlookup-overlaps_left\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">overlaps_left</span></code><a class=\"heading-anchor\" href=\"#overlaps-left\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Geometry_Overleft.html\">PostGIS</a>, PGRaster (Bilateral)</p>\n<p>测试几何字段的边界框是否与查找几何的边界框重叠或位于其左侧。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__overlaps_left</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>PostGIS 等效方式：</p>\n<div class=\"code-block\" data-language=\"sql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"k\">SELECT</span><span class=\"w\"> </span><span class=\"p\">...</span><span class=\"w\"> </span><span class=\"k\">WHERE</span><span class=\"w\"> </span><span class=\"n\">poly</span><span class=\"w\"> </span><span class=\"o\">&amp;&lt;</span><span class=\"w\"> </span><span class=\"n\">geom</span>\n</code></pre></div>\n</section>\n<section id=\"overlaps-right\">\n<span id=\"std-fieldlookup-overlaps_right\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">overlaps_right</span></code><a class=\"heading-anchor\" href=\"#overlaps-right\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Geometry_Overright.html\">PostGIS</a>, PGRaster (Bilateral)</p>\n<p>测试几何字段的边界框是否与查找几何的边界框重叠或位于其右侧。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__overlaps_right</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>PostGIS 等效方式：</p>\n<div class=\"code-block\" data-language=\"sql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"k\">SELECT</span><span class=\"w\"> </span><span class=\"p\">...</span><span class=\"w\"> </span><span class=\"k\">WHERE</span><span class=\"w\"> </span><span class=\"n\">poly</span><span class=\"w\"> </span><span class=\"o\">&amp;&gt;</span><span class=\"w\"> </span><span class=\"n\">geom</span>\n</code></pre></div>\n</section>\n<section id=\"overlaps-above\">\n<span id=\"std-fieldlookup-overlaps_above\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">overlaps_above</span></code><a class=\"heading-anchor\" href=\"#overlaps-above\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Geometry_Overabove.html\">PostGIS</a>, PGRaster (Conversion)</p>\n<p>测试几何字段的边界框是否与查找几何的边界框重叠或位于其上方。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__overlaps_above</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>PostGIS 等效方式：</p>\n<div class=\"code-block\" data-language=\"sql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"k\">SELECT</span><span class=\"w\"> </span><span class=\"p\">...</span><span class=\"w\"> </span><span class=\"k\">WHERE</span><span class=\"w\"> </span><span class=\"n\">poly</span><span class=\"w\"> </span><span class=\"o\">|&amp;&gt;</span><span class=\"w\"> </span><span class=\"n\">geom</span>\n</code></pre></div>\n</section>\n<section id=\"overlaps-below\">\n<span id=\"std-fieldlookup-overlaps_below\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">overlaps_below</span></code><a class=\"heading-anchor\" href=\"#overlaps-below\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Geometry_Overbelow.html\">PostGIS</a>, PGRaster (Conversion)</p>\n<p>测试几何字段的边界框是否与查找几何的边界框重叠或位于其下方。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__overlaps_below</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>PostGIS 等效方式：</p>\n<div class=\"code-block\" data-language=\"sql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"k\">SELECT</span><span class=\"w\"> </span><span class=\"p\">...</span><span class=\"w\"> </span><span class=\"k\">WHERE</span><span class=\"w\"> </span><span class=\"n\">poly</span><span class=\"w\"> </span><span class=\"o\">&amp;&lt;|</span><span class=\"w\"> </span><span class=\"n\">geom</span>\n</code></pre></div>\n</section>\n<section id=\"strictly-above\">\n<span id=\"std-fieldlookup-strictly_above\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">strictly_above</span></code><a class=\"heading-anchor\" href=\"#strictly-above\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Geometry_Above.html\">PostGIS</a>, PGRaster (Conversion)</p>\n<p>测试几何字段的边界框是否严格位于查找几何的边界框上方。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__strictly_above</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>PostGIS 等效方式：</p>\n<div class=\"code-block\" data-language=\"sql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"k\">SELECT</span><span class=\"w\"> </span><span class=\"p\">...</span><span class=\"w\"> </span><span class=\"k\">WHERE</span><span class=\"w\"> </span><span class=\"n\">poly</span><span class=\"w\"> </span><span class=\"o\">|&gt;&gt;</span><span class=\"w\"> </span><span class=\"n\">geom</span>\n</code></pre></div>\n</section>\n<section id=\"strictly-below\">\n<span id=\"std-fieldlookup-strictly_below\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">strictly_below</span></code><a class=\"heading-anchor\" href=\"#strictly-below\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Geometry_Below.html\">PostGIS</a>, PGRaster (Conversion)</p>\n<p>测试几何字段的边界框是否严格位于查找几何的边界框下方。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__strictly_below</span><span class=\"o\">=</span><span class=\"n\">geom</span><span class=\"p\">)</span>\n</code></pre></div>\n<p>PostGIS 等效方式：</p>\n<div class=\"code-block\" data-language=\"sql\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">SQL</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"SQL code\"><code><span class=\"k\">SELECT</span><span class=\"w\"> </span><span class=\"p\">...</span><span class=\"w\"> </span><span class=\"k\">WHERE</span><span class=\"w\"> </span><span class=\"n\">poly</span><span class=\"w\"> </span><span class=\"o\">&lt;&lt;|</span><span class=\"w\"> </span><span class=\"n\">geom</span>\n</code></pre></div>\n</section>\n</section>\n<section id=\"distance-lookups\">\n<span id=\"id6\"></span><h2>距离查找<a class=\"heading-anchor\" href=\"#distance-lookups\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h2>\n<p><em>可用性</em>: PostGIS, Oracle, MariaDB, MySQL, SpatiaLite, PGRaster (Native)</p>\n<p>有关执行距离查询的概述，请参见 <a class=\"reference internal\" href=\"/zh-hans/4.2/ref/contrib/gis/db-api/#distance-queries\"><span class=\"std std-ref\">距离查询介绍</span></a>。</p>\n<p>距离查找具有以下形式：</p>\n<div class=\"code-block\" data-language=\"text\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Text</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Text code\"><code>&lt;field&gt;__&lt;distance lookup&gt;=(&lt;geometry/raster&gt;, &lt;distance value&gt;[, &quot;spheroid&quot;])\n&lt;field&gt;__&lt;distance lookup&gt;=(&lt;raster&gt;, &lt;band_index&gt;, &lt;distance value&gt;[, &quot;spheroid&quot;])\n&lt;field&gt;__&lt;band_index&gt;__&lt;distance lookup&gt;=(&lt;raster&gt;, &lt;band_index&gt;, &lt;distance value&gt;[, &quot;spheroid&quot;])\n</code></pre></div>\n<p>传递给距离查找的值是一个元组；前两个值是必需的，分别是要计算距离的几何对象和距离值（可以是字段单位的数字、一个 <a class=\"reference internal\" href=\"/zh-hans/4.2/ref/contrib/gis/measure/#django.contrib.gis.measure.Distance\" title=\"django.contrib.gis.measure.Distance\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">Distance</span></code></a> 对象或一个 <a class=\"reference internal\" href=\"/zh-hans/4.2/ref/models/expressions/\"><span class=\"doc\">查询表达式</span></a>）。要传递一个波段索引给查找，可以使用一个包含三个元素的元组，其中第二个条目是波段索引。</p>\n<p>在除了 <a class=\"reference internal\" href=\"#std-fieldlookup-dwithin\"><code class=\"xref std std-lookup docutils literal notranslate\"><span class=\"pre\">dwithin</span></code></a> 之外的每个距离查找中，都可以包含一个可选元素 <code class=\"docutils literal notranslate\"><span class=\"pre\">'spheroid'</span></code>，以便在具有大地测量坐标系统的字段上使用更准确的大地测量距离计算函数。</p>\n<p>在 PostgreSQL 上，<code class=\"docutils literal notranslate\"><span class=\"pre\">'spheroid'</span></code> 选项使用 <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Distance_Spheroid.html\">ST_DistanceSpheroid</a> 而不是 <a class=\"reference external\" href=\"https://postgis.net/docs/ST_DistanceSphere.html\">ST_DistanceSphere</a>。对于投影坐标系统，将使用更简单的 <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Distance.html\">ST_Distance</a> 函数。对于基于椭球体的查找，栅格将被转换为几何对象。</p>\n<section id=\"distance-gt\">\n<span id=\"std-fieldlookup-distance_gt\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">distance_gt</span></code><a class=\"heading-anchor\" href=\"#distance-gt\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>返回距离几何字段到查找几何的距离大于给定距离值的模型。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__distance_gt</span><span class=\"o\">=</span><span class=\"p\">(</span><span class=\"n\">geom</span><span class=\"p\">,</span> <span class=\"n\">D</span><span class=\"p\">(</span><span class=\"n\">m</span><span class=\"o\">=</span><span class=\"mi\">5</span><span class=\"p\">)))</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Distance/ST_Distance_Sphere(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&gt;</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Distance(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&gt;</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Distance(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&gt;</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_GEOM.SDO_DISTANCE(poly,</span> <span class=\"pre\">geom,</span> <span class=\"pre\">0.05)</span> <span class=\"pre\">&gt;</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Distance(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&gt;</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"distance-gte\">\n<span id=\"std-fieldlookup-distance_gte\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">distance_gte</span></code><a class=\"heading-anchor\" href=\"#distance-gte\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>返回距离几何字段到查找几何的距离大于或等于给定距离值的模型。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__distance_gte</span><span class=\"o\">=</span><span class=\"p\">(</span><span class=\"n\">geom</span><span class=\"p\">,</span> <span class=\"n\">D</span><span class=\"p\">(</span><span class=\"n\">m</span><span class=\"o\">=</span><span class=\"mi\">5</span><span class=\"p\">)))</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Distance/ST_Distance_Sphere(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&gt;=</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Distance(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&gt;=</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Distance(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&gt;=</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_GEOM.SDO_DISTANCE(poly,</span> <span class=\"pre\">geom,</span> <span class=\"pre\">0.05)</span> <span class=\"pre\">&gt;=</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Distance(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&gt;=</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"distance-lt\">\n<span id=\"std-fieldlookup-distance_lt\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">distance_lt</span></code><a class=\"heading-anchor\" href=\"#distance-lt\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>返回距离几何字段到查找几何的距离小于给定距离值的模型。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__distance_lt</span><span class=\"o\">=</span><span class=\"p\">(</span><span class=\"n\">geom</span><span class=\"p\">,</span> <span class=\"n\">D</span><span class=\"p\">(</span><span class=\"n\">m</span><span class=\"o\">=</span><span class=\"mi\">5</span><span class=\"p\">)))</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Distance/ST_Distance_Sphere(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&lt;</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Distance(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&lt;</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Distance(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&lt;</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_GEOM.SDO_DISTANCE(poly,</span> <span class=\"pre\">geom,</span> <span class=\"pre\">0.05)</span> <span class=\"pre\">&lt;</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Distance(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&lt;</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"distance-lte\">\n<span id=\"std-fieldlookup-distance_lte\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">distance_lte</span></code><a class=\"heading-anchor\" href=\"#distance-lte\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>返回距离几何字段到查找几何的距离小于或等于给定距离值的模型。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__distance_lte</span><span class=\"o\">=</span><span class=\"p\">(</span><span class=\"n\">geom</span><span class=\"p\">,</span> <span class=\"n\">D</span><span class=\"p\">(</span><span class=\"n\">m</span><span class=\"o\">=</span><span class=\"mi\">5</span><span class=\"p\">)))</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Distance/ST_Distance_Sphere(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&lt;=</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>MariaDB</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Distance(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&lt;=</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>MySQL</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_Distance(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&lt;=</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_GEOM.SDO_DISTANCE(poly,</span> <span class=\"pre\">geom,</span> <span class=\"pre\">0.05)</span> <span class=\"pre\">&lt;=</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">Distance(poly,</span> <span class=\"pre\">geom)</span> <span class=\"pre\">&lt;=</span> <span class=\"pre\">5</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"dwithin\">\n<span id=\"std-fieldlookup-dwithin\"></span><h3><code class=\"docutils literal notranslate\"><span class=\"pre\">dwithin</span></code><a class=\"heading-anchor\" href=\"#dwithin\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>返回距离几何字段到查找几何的距离在给定距离内的模型。请注意，如果目标几何对象位于投影坐标系统中，您只能提供 <a class=\"reference internal\" href=\"/zh-hans/4.2/ref/contrib/gis/measure/#django.contrib.gis.measure.Distance\" title=\"django.contrib.gis.measure.Distance\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">Distance</span></code></a> 对象。对于地理几何对象，您应该使用几何字段的单位（例如，对于 <code class=\"docutils literal notranslate\"><span class=\"pre\">WGS84</span></code> 使用度）。</p>\n<p>举例：</p>\n<div class=\"code-block\" data-language=\"default\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Code</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Code code\"><code><span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__dwithin</span><span class=\"o\">=</span><span class=\"p\">(</span><span class=\"n\">geom</span><span class=\"p\">,</span> <span class=\"n\">D</span><span class=\"p\">(</span><span class=\"n\">m</span><span class=\"o\">=</span><span class=\"mi\">5</span><span class=\"p\">)))</span>\n</code></pre></div>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>后端</p></th>\n<th class=\"head\"><p>SQL 等效方式</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p>PostGIS</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">ST_DWithin(poly,</span> <span class=\"pre\">geom,</span> <span class=\"pre\">5)</span></code></p></td>\n</tr>\n<tr class=\"row-odd\"><td><p>Oracle</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">SDO_WITHIN_DISTANCE(poly,</span> <span class=\"pre\">geom,</span> <span class=\"pre\">5)</span></code></p></td>\n</tr>\n<tr class=\"row-even\"><td><p>SpatiaLite</p></td>\n<td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">PtDistWithin(poly,</span> <span class=\"pre\">geom,</span> <span class=\"pre\">5)</span></code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</section>\n<section id=\"aggregate-functions\">\n<h3>聚合函数<a class=\"heading-anchor\" href=\"#aggregate-functions\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h3>\n<p>Django 提供了一些与地理信息系统 (GIS) 相关的聚合函数。有关如何使用这些聚合函数的详细信息，请参阅 <a class=\"reference internal\" href=\"/zh-hans/4.2/topics/db/aggregation/\"><span class=\"doc\">有关聚合的主题指南</span></a>。</p>\n<div class=\"table-scroll\" role=\"region\" tabindex=\"0\" aria-label=\"Table\"><table class=\"docutils align-default\">\n<thead>\n<tr class=\"row-odd\"><th class=\"head\"><p>关键字参数</p></th>\n<th class=\"head\"><p>描述</p></th>\n</tr>\n</thead>\n<tbody>\n<tr class=\"row-even\"><td><p><code class=\"docutils literal notranslate\"><span class=\"pre\">tolerance</span></code></p></td>\n<td><p>这个关键字仅适用于 Oracle。它用于 <code class=\"docutils literal notranslate\"><span class=\"pre\">SDOAGGRTYPE</span></code> 过程使用的容差值；有关更多详细信息，请参阅 <a class=\"reference external\" href=\"https://docs.oracle.com/en/database/oracle/oracle-database/21/spatl/spatial-concepts.html#GUID-CE10AB14-D5EA-43BA-A647-DAC9EEF41EE6\">Oracle 文档</a>。</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<p>例如：</p>\n<div class=\"code-block\" data-language=\"pycon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python console</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Python console code\"><code><span class=\"gp\">&gt;&gt;&gt; </span><span class=\"kn\">from</span><span class=\"w\"> </span><span class=\"nn\">django.contrib.gis.db.models</span><span class=\"w\"> </span><span class=\"kn\">import</span> <span class=\"n\">Extent</span><span class=\"p\">,</span> <span class=\"n\">Union</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">WorldBorder</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">aggregate</span><span class=\"p\">(</span><span class=\"n\">Extent</span><span class=\"p\">(</span><span class=\"s2\">&quot;mpoly&quot;</span><span class=\"p\">),</span> <span class=\"n\">Union</span><span class=\"p\">(</span><span class=\"s2\">&quot;mpoly&quot;</span><span class=\"p\">))</span>\n</code></pre></div>\n<section id=\"collect\">\n<h4><code class=\"docutils literal notranslate\"><span class=\"pre\">Collect</span></code><a class=\"heading-anchor\" href=\"#collect\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h4>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.db.models.Collect\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">Collect</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">geo_field</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.contrib.gis.db.models.Collect\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Collect.html\">PostGIS</a>, SpatiaLite</p>\n<p>从几何列返回一个 <code class=\"docutils literal notranslate\"><span class=\"pre\">GEOMETRYCOLLECTION</span></code> 或 <code class=\"docutils literal notranslate\"><span class=\"pre\">MULTI</span></code> 几何对象。这类似于简化版本的 <a class=\"reference internal\" href=\"#django.contrib.gis.db.models.Union\" title=\"django.contrib.gis.db.models.Union\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">Union</span></code></a> 聚合，但它可以比执行联合操作快几个数量级，因为它将几何对象汇总到一个集合或多重对象中，而不关心边界的消解。</p>\n</section>\n<section id=\"extent\">\n<h4><code class=\"docutils literal notranslate\"><span class=\"pre\">Extent</span></code><a class=\"heading-anchor\" href=\"#extent\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h4>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.db.models.Extent\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">Extent</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">geo_field</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.contrib.gis.db.models.Extent\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Extent.html\">PostGIS</a>, Oracle, SpatiaLite</p>\n<p>将 <code class=\"docutils literal notranslate\"><span class=\"pre\">QuerySet</span></code> 中所有 <code class=\"docutils literal notranslate\"><span class=\"pre\">geo_field</span></code> 的范围返回为一个由四个元素组成的元组，包括左下坐标和右上坐标。</p>\n<p>例如：</p>\n<div class=\"code-block\" data-language=\"pycon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python console</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Python console code\"><code><span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">qs</span> <span class=\"o\">=</span> <span class=\"n\">City</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">name__in</span><span class=\"o\">=</span><span class=\"p\">(</span><span class=\"s2\">&quot;Houston&quot;</span><span class=\"p\">,</span> <span class=\"s2\">&quot;Dallas&quot;</span><span class=\"p\">))</span><span class=\"o\">.</span><span class=\"n\">aggregate</span><span class=\"p\">(</span><span class=\"n\">Extent</span><span class=\"p\">(</span><span class=\"s2\">&quot;poly&quot;</span><span class=\"p\">))</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"n\">qs</span><span class=\"p\">[</span><span class=\"s2\">&quot;poly__extent&quot;</span><span class=\"p\">])</span>\n<span class=\"go\">(-96.8016128540039, 29.7633724212646, -95.3631439208984, 32.782058715820)</span>\n</code></pre></div>\n</section>\n<section id=\"extent3d\">\n<h4><code class=\"docutils literal notranslate\"><span class=\"pre\">Extent3D</span></code><a class=\"heading-anchor\" href=\"#extent3d\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h4>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.db.models.Extent3D\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">Extent3D</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">geo_field</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.contrib.gis.db.models.Extent3D\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_3DExtent.html\">PostGIS</a></p>\n<p>将 <code class=\"docutils literal notranslate\"><span class=\"pre\">QuerySet</span></code> 中所有 <code class=\"docutils literal notranslate\"><span class=\"pre\">geo_field</span></code> 的三维范围返回为一个由六个元素组成的元组，包括左下坐标和右上坐标（每个坐标都包含 x、y 和 z 坐标）。</p>\n<p>例如：</p>\n<div class=\"code-block\" data-language=\"pycon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python console</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Python console code\"><code><span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">qs</span> <span class=\"o\">=</span> <span class=\"n\">City</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">name__in</span><span class=\"o\">=</span><span class=\"p\">(</span><span class=\"s2\">&quot;Houston&quot;</span><span class=\"p\">,</span> <span class=\"s2\">&quot;Dallas&quot;</span><span class=\"p\">))</span><span class=\"o\">.</span><span class=\"n\">aggregate</span><span class=\"p\">(</span><span class=\"n\">Extent3D</span><span class=\"p\">(</span><span class=\"s2\">&quot;poly&quot;</span><span class=\"p\">))</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"n\">qs</span><span class=\"p\">[</span><span class=\"s2\">&quot;poly__extent3d&quot;</span><span class=\"p\">])</span>\n<span class=\"go\">(-96.8016128540039, 29.7633724212646, 0, -95.3631439208984, 32.782058715820, 0)</span>\n</code></pre></div>\n</section>\n<section id=\"makeline\">\n<h4><code class=\"docutils literal notranslate\"><span class=\"pre\">MakeLine</span></code><a class=\"heading-anchor\" href=\"#makeline\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h4>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.db.models.MakeLine\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">MakeLine</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">geo_field</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.contrib.gis.db.models.MakeLine\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_MakeLine.html\">PostGIS</a>, SpatiaLite</p>\n<p>从 <code class=\"docutils literal notranslate\"><span class=\"pre\">QuerySet</span></code> 中的点字段几何构造一个 <code class=\"docutils literal notranslate\"><span class=\"pre\">LineString</span></code>。目前，对查询集进行排序不会产生影响。</p>\n<p>例如：</p>\n<div class=\"code-block\" data-language=\"pycon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python console</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Python console code\"><code><span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">qs</span> <span class=\"o\">=</span> <span class=\"n\">City</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">name__in</span><span class=\"o\">=</span><span class=\"p\">(</span><span class=\"s2\">&quot;Houston&quot;</span><span class=\"p\">,</span> <span class=\"s2\">&quot;Dallas&quot;</span><span class=\"p\">))</span><span class=\"o\">.</span><span class=\"n\">aggregate</span><span class=\"p\">(</span><span class=\"n\">MakeLine</span><span class=\"p\">(</span><span class=\"s2\">&quot;poly&quot;</span><span class=\"p\">))</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"nb\">print</span><span class=\"p\">(</span><span class=\"n\">qs</span><span class=\"p\">[</span><span class=\"s2\">&quot;poly__makeline&quot;</span><span class=\"p\">])</span>\n<span class=\"go\">LINESTRING (-95.3631510000000020 29.7633739999999989, -96.8016109999999941 32.7820570000000018)</span>\n</code></pre></div>\n</section>\n<section id=\"union\">\n<h4><code class=\"docutils literal notranslate\"><span class=\"pre\">Union</span></code><a class=\"heading-anchor\" href=\"#union\"><span class=\"visually-hidden\">Link to this heading</span><span aria-hidden=\"true\">#</span></a></h4>\n<dl class=\"py class\">\n<dt class=\"sig sig-object py\" id=\"django.contrib.gis.db.models.Union\">\n<em class=\"property\"><span class=\"k\"><span class=\"pre\">class</span></span><span class=\"w\"> </span></em><span class=\"sig-name descname\"><span class=\"pre\">Union</span></span><span class=\"sig-paren\">(</span><em class=\"sig-param\"><span class=\"n\"><span class=\"pre\">geo_field</span></span></em><span class=\"sig-paren\">)</span><a class=\"heading-anchor\" href=\"#django.contrib.gis.db.models.Union\"><span class=\"visually-hidden\">Link to this definition</span><span aria-hidden=\"true\">#</span></a></dt>\n<dd></dd></dl>\n\n<p><em>可用性</em>: <a class=\"reference external\" href=\"https://postgis.net/docs/ST_Union.html\">PostGIS</a>, Oracle, SpatiaLite</p>\n<p>这个方法返回一个包含查询集中每个几何对象联合的 <a class=\"reference internal\" href=\"/zh-hans/4.2/ref/contrib/gis/geos/#django.contrib.gis.geos.GEOSGeometry\" title=\"django.contrib.gis.geos.GEOSGeometry\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">GEOSGeometry</span></code></a> 对象。请注意，使用 <code class=\"docutils literal notranslate\"><span class=\"pre\">Union</span></code> 是处理器密集型的操作，在大型查询集上可能需要较长时间。</p>\n<aside class=\"admonition admonition-note\" role=\"note\">\n<p class=\"admonition-title\">Note</p>\n<p>如果使用这个方法的计算时间太昂贵，可以考虑使用 <a class=\"reference internal\" href=\"#django.contrib.gis.db.models.Collect\" title=\"django.contrib.gis.db.models.Collect\"><code class=\"xref py py-class docutils literal notranslate\"><span class=\"pre\">Collect</span></code></a> 代替。</p>\n</aside>\n<p>例如：</p>\n<div class=\"code-block\" data-language=\"pycon\"><div class=\"code-block-toolbar\"><span class=\"code-block-language\">Python console</span><button type=\"button\" class=\"copy-button\" data-copy hidden><span class=\"copy-button-label\">Copy</span></button></div><pre role=\"group\" tabindex=\"0\" aria-label=\"Python console code\"><code><span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">u</span> <span class=\"o\">=</span> <span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">aggregate</span><span class=\"p\">(</span><span class=\"n\">Union</span><span class=\"p\">(</span><span class=\"n\">poly</span><span class=\"p\">))</span>  <span class=\"c1\"># This may take a long time.</span>\n<span class=\"gp\">&gt;&gt;&gt; </span><span class=\"n\">u</span> <span class=\"o\">=</span> <span class=\"n\">Zipcode</span><span class=\"o\">.</span><span class=\"n\">objects</span><span class=\"o\">.</span><span class=\"n\">filter</span><span class=\"p\">(</span><span class=\"n\">poly__within</span><span class=\"o\">=</span><span class=\"n\">bbox</span><span class=\"p\">)</span><span class=\"o\">.</span><span class=\"n\">aggregate</span><span class=\"p\">(</span>\n<span class=\"gp\">... </span>    <span class=\"n\">Union</span><span class=\"p\">(</span><span class=\"n\">poly</span><span class=\"p\">)</span>\n<span class=\"gp\">... </span><span class=\"p\">)</span>  <span class=\"c1\"># A more sensible approach.</span>\n</code></pre></div>\n<p class=\"rubric\">脚注</p>\n<aside class=\"footnote-list brackets\">\n<aside class=\"footnote brackets\" id=\"fnde9im\" role=\"doc-footnote\">\n<span class=\"label\"><span class=\"fn-bracket\">[</span><a role=\"doc-backlink\" href=\"#id4\">1</a><span class=\"fn-bracket\">]</span></span>\n<p><em>查看</em> <a class=\"reference external\" href=\"https://portal.ogc.org/files/?artifact_id=829\">OpenGIS Simple Feature Specification For SQL</a>，第 2.1.13.2 章，第 2-13 页（维度扩展九交叉模型）。</p>\n</aside>\n<aside class=\"footnote brackets\" id=\"fnsdorelate\" role=\"doc-footnote\">\n<span class=\"label\"><span class=\"fn-bracket\">[</span><a role=\"doc-backlink\" href=\"#id5\">2</a><span class=\"fn-bracket\">]</span></span>\n<p><em>查看</em> <a class=\"reference external\" href=\"https://docs.oracle.com/en/database/oracle/oracle-database/18/spatl/spatial-operators-reference.html#GUID-97C17C18-F05E-49B4-BE11-E89B972E2A02\">SDO_RELATE 文档</a>，来自 Oracle Spatial and Graph Developer's Guide。</p>\n</aside>\n<aside class=\"footnote brackets\" id=\"fncovers\" role=\"doc-footnote\">\n<span class=\"label\"><span class=\"fn-bracket\">[</span>3<span class=\"fn-bracket\">]</span></span>\n<span class=\"backrefs\">(<a role=\"doc-backlink\" href=\"#id2\">1</a>,<a role=\"doc-backlink\" href=\"#id3\">2</a>)</span>\n<p>要了解这个例程的解释，请阅读由 Martin Davis（PostGIS 开发人员）编写的文章 <a class=\"reference external\" href=\"https://lin-ear-th-inking.blogspot.com/2007/06/subtleties-of-ogc-covers-spatial.html\">Quirks of the &quot;Contains&quot; Spatial Predicate</a>。</p>\n</aside>\n</aside>\n</section>\n</section>\n</section>","rootId":"gis-queryset-api-reference","toc":[{"title":"空间查找","anchor":"spatial-lookups","children":[{"title":"栅格查找方式","anchor":"lookups-with-rasters","children":[]},{"title":"bbcontains","anchor":"bbcontains","children":[]},{"title":"bboverlaps","anchor":"bboverlaps","children":[]},{"title":"contained","anchor":"contained","children":[]},{"title":"contains","anchor":"contains","children":[]},{"title":"contains_properly","anchor":"contains-properly","children":[]},{"title":"coveredby","anchor":"coveredby","children":[]},{"title":"covers","anchor":"covers","children":[]},{"title":"crosses","anchor":"crosses","children":[]},{"title":"disjoint","anchor":"disjoint","children":[]},{"title":"equals","anchor":"equals","children":[]},{"title":"exact, same_as","anchor":"exact-same-as","children":[]},{"title":"intersects","anchor":"intersects","children":[]},{"title":"isempty","anchor":"isempty","children":[]},{"title":"isvalid","anchor":"isvalid","children":[]},{"title":"overlaps","anchor":"overlaps","children":[]},{"title":"relate","anchor":"relate","children":[{"title":"MariaDB、PostGIS  和 SpatiaLite","anchor":"mariadb-postgis-and-spatialite","children":[]},{"title":"Oracle","anchor":"oracle","children":[]}]},{"title":"touches","anchor":"touches","children":[]},{"title":"within","anchor":"within","children":[]},{"title":"left","anchor":"left","children":[]},{"title":"right","anchor":"right","children":[]},{"title":"overlaps_left","anchor":"overlaps-left","children":[]},{"title":"overlaps_right","anchor":"overlaps-right","children":[]},{"title":"overlaps_above","anchor":"overlaps-above","children":[]},{"title":"overlaps_below","anchor":"overlaps-below","children":[]},{"title":"strictly_above","anchor":"strictly-above","children":[]},{"title":"strictly_below","anchor":"strictly-below","children":[]}]},{"title":"距离查找","anchor":"distance-lookups","children":[{"title":"distance_gt","anchor":"distance-gt","children":[]},{"title":"distance_gte","anchor":"distance-gte","children":[]},{"title":"distance_lt","anchor":"distance-lt","children":[]},{"title":"distance_lte","anchor":"distance-lte","children":[]},{"title":"dwithin","anchor":"dwithin","children":[]},{"title":"聚合函数","anchor":"aggregate-functions","children":[{"title":"Collect","anchor":"collect","children":[]},{"title":"Extent","anchor":"extent","children":[]},{"title":"Extent3D","anchor":"extent3d","children":[]},{"title":"MakeLine","anchor":"makeline","children":[]},{"title":"Union","anchor":"union","children":[]}]}]}],"breadcrumbs":[{"docname":"ref/index","title":"API 参考","url":"/zh-hans/4.2/ref/"},{"docname":"ref/contrib/index","title":"contrib 包","url":"/zh-hans/4.2/ref/contrib/"},{"docname":"ref/contrib/gis/index","title":"GeoDjango","url":"/zh-hans/4.2/ref/contrib/gis/"}],"prev":{"docname":"ref/contrib/gis/forms-api","title":"GeoDjango 表单 API","url":"/zh-hans/4.2/ref/contrib/gis/forms-api/"},"next":{"docname":"ref/contrib/gis/functions","title":"地理数据库函数","url":"/zh-hans/4.2/ref/contrib/gis/functions/"},"formats":{"html":"/zh-hans/4.2/ref/contrib/gis/geoquerysets/","markdown":"/zh-hans/4.2/ref/contrib/gis/geoquerysets.md","json":"/zh-hans/4.2/ref/contrib/gis/geoquerysets.json"},"source":"https://github.com/django/django/blob/stable/4.2.x/docs/ref/contrib/gis/geoquerysets.txt","official":"https://docs.djangoproject.com/zh-hans/4.2/ref/contrib/gis/geoquerysets/","inVersions":["6.1","6.0","5.2","5.1","5.0","4.2","4.1","4.0","3.2","3.1","3.0","2.2","2.1","2.0"],"inLocales":["en","zh-hans","fr","ja","id","it","pt-br","ko","es","el","pl"]}