Difference between revisions of "Prostorové operátory"

From Wikivyuka
Jump to: navigation, search
m
m
Line 1: Line 1:
Modul Spatial používá dvoufázové model vyhodnocování dotazu s primárním a sekundárním filtrem při řešení prostorových dotazů či join operací (spojení). Termín dvou-tier naznačuje, že dvě odlišné operace jsou prováděny na řešení dotazů. Provádějí-li se obě operace, přesná sada výsledků je vrácena.  
+
Modul Spatial používá dvoufázové model vyhodnocování dotazu s primárním a sekundárním filtrem při řešení prostorových dotazů či join operací (spojení). Pokud se provádí dvoufázová filtrace,  vrací se velmi přesná sada výsledků. Existují operátory, které využívají pouze první z filtrů (například SDO_FILTER), kdy výstupem je pouze sada kandidátů na zařazení do výsledku, neboť tato možnost je postavena na použití tzv. MBR (minimum bounding rectangle) - minimálních ohraničujících obdélníků. Ty mají za úkol v prvních průchodu vybrat do výsledku takové geometrie, jejichž MBR jsou v požadovaném vztahu. Teprve v druhém filtru dochází ke kontrole samotných geometrií a vyhovují-li požadovanému vztahu, jsou zařazeny do výsledné sady.
 +
 
 +
U operátorů, které Oracle nabízí je proto vhodné ověřit v dokumentaci, zda je operátor pouze jednofiltrový (například SDO_FILTER) nebo používá obou filtrů (například SDO_RELATE). V tabulce jsou uvedeny základní operátory, které Oracle Spatial nabízí.
  
 
'''Základní Spatial Operátory'''
 
'''Základní Spatial Operátory'''

Revision as of 15:16, 5 August 2014

Modul Spatial používá dvoufázové model vyhodnocování dotazu s primárním a sekundárním filtrem při řešení prostorových dotazů či join operací (spojení). Pokud se provádí dvoufázová filtrace, vrací se velmi přesná sada výsledků. Existují operátory, které využívají pouze první z filtrů (například SDO_FILTER), kdy výstupem je pouze sada kandidátů na zařazení do výsledku, neboť tato možnost je postavena na použití tzv. MBR (minimum bounding rectangle) - minimálních ohraničujících obdélníků. Ty mají za úkol v prvních průchodu vybrat do výsledku takové geometrie, jejichž MBR jsou v požadovaném vztahu. Teprve v druhém filtru dochází ke kontrole samotných geometrií a vyhovují-li požadovanému vztahu, jsou zařazeny do výsledné sady.

U operátorů, které Oracle nabízí je proto vhodné ověřit v dokumentaci, zda je operátor pouze jednofiltrový (například SDO_FILTER) nebo používá obou filtrů (například SDO_RELATE). V tabulce jsou uvedeny základní operátory, které Oracle Spatial nabízí.

Základní Spatial Operátory

Operator         Description
SDO_FILTER       Specifies which geometries may interact with a given geometry.
SDO_JOIN         Performs a spatial join based on one or more topological relationships.
SDO_NN           Determines the nearest neighbor geometries to a geometry.
SDO_NN_DISTANCE  Returns the distance of an object returned by the SDO_NN operator.
SDO_WITHIN_DISTANCE Determines if two geometries are within a specified distance from one another.
SDO_RELATE       Determines whether or not two geometries interact in a specified way. 
                 (See for convenient alternative operators for performing specific mask value operations.)

Convenience Operators for SDO_RELATE Operations

Operator                Description
SDO_ANYINTERACT         Checks if any geometries in a table have the ANYINTERACT topological relationship  
                        with a specified geometry.
SDO_CONTAINS            Checks if any geometries in a table have the CONTAINS topological relationship 
                        with a specified geometry.
SDO_COVEREDBY           Checks if any geometries in a table have the COVEREDBY topological relationship
                        with a specified geometry.
SDO_COVERS              Checks if any geometries in a table have the COVERS topological relationship 
                        with a specified geometry.
SDO_EQUAL               Checks if any geometries in a table have the EQUAL topological relationship 
                        with a specified geometry.
SDO_INSIDE              Checks if any geometries in a table have the INSIDE topological relationship 
                        with a specified geometry.
SDO_ON                  Checks if any geometries in a table have the ON topological relationship 
                        with a specified geometry.
SDO_OVERLAPBDYDISJOINT  Checks if any geometries in a table have the OVERLAPBDYDISJOINT topological relationship 
                        with a specified geometry.
SDO_OVERLAPBDYINTERSECT Checks if any geometries in a table have the OVERLAPBDYINTERSECT topological relationship
                         with a specified geometry.
SDO_OVERLAPS            Checks if any geometries in a table overlap (that is, have the OVERLAPBDYDISJOINT 
                        or OVERLAPBDYINTERSECT topological relationship with) a specified geometry.
SDO_TOUCH               Checks if any geometries in a table have the TOUCH topological relationship 
                        with a specified geometry.

Hlavní stránka předmětu