Difference between revisions of "Ukázka prostorových operací"

From Wikivyuka
Jump to: navigation, search
m
m
Line 1: Line 1:
 +
Použití jednotlivých operátorů v dotazech SQL, kde jsou předvedeny různé topologické vztahy:
 +
 
  SELECT l.naz_lau1, l.geom
 
  SELECT l.naz_lau1, l.geom
 
  FROM okresy l, kraje n
 
  FROM okresy l, kraje n
Line 14: Line 16:
 
  FROM okresy l, kraje n
 
  FROM okresy l, kraje n
 
  WHERE SDO_COVEREDBY(L.geom, N.geom) = 'TRUE' AND l.naz_cnuts2 = 'Moravskoslezsko';
 
  WHERE SDO_COVEREDBY(L.geom, N.geom) = 'TRUE' AND l.naz_cnuts2 = 'Moravskoslezsko';
 +
 +
Dotaz lze formulovat i pomocí operátoru SDO_RELATE
 +
  SDO_RELATE(geometry1,geometry2, 'mask = <some_mask_val>') = 'TRUE'
 +
kde je do parametru ''mask'' doplněn požadovaný typ vztahu.
 +
 +
SELECT l.naz_lau1, l.geom
 +
FROM okresy l, kraje n
 +
WHERE SDO_RELATE(l.geom, n.geom, 'mask = COVEREDBY') = 'TRUE' AND l.naz_cnuts2 = 'Moravskoslezsko';
  
 
  SELECT l.naz_lau1, l.geom
 
  SELECT l.naz_lau1, l.geom
 
  FROM okresy l, kraje n
 
  FROM okresy l, kraje n
 
  WHERE SDO_TOUCH(n.geom, l.geom) = 'TRUE' AND l.naz_cnuts2 = 'Moravskoslezsko';
 
  WHERE SDO_TOUCH(n.geom, l.geom) = 'TRUE' AND l.naz_cnuts2 = 'Moravskoslezsko';

Revision as of 06:19, 15 April 2014

Použití jednotlivých operátorů v dotazech SQL, kde jsou předvedeny různé topologické vztahy:

SELECT l.naz_lau1, l.geom
FROM okresy l, kraje n
WHERE SDO_ANYINTERACT(l.geom, n.geom) = 'TRUE' AND l.naz_cnuts2 = 'Moravskoslezsko';
SELECT l.naz_lau1, l.geom
FROM okresy l, kraje n
WHERE SDO_CONTAINS(n.geom, l.geom) = 'TRUE' AND l.naz_cnuts2 = 'Moravskoslezsko';
SELECT l.naz_lau1, l.geom
FROM okresy l, kraje n
WHERE SDO_COVERS(n.geom, l.geom) = 'TRUE' AND l.naz_cnuts2 = 'Moravskoslezsko';
SELECT l.naz_lau1, l.geom
FROM okresy l, kraje n
WHERE SDO_COVEREDBY(L.geom, N.geom) = 'TRUE' AND l.naz_cnuts2 = 'Moravskoslezsko';

Dotaz lze formulovat i pomocí operátoru SDO_RELATE

 SDO_RELATE(geometry1,geometry2, 'mask = <some_mask_val>') = 'TRUE' 

kde je do parametru mask doplněn požadovaný typ vztahu.

SELECT l.naz_lau1, l.geom
FROM okresy l, kraje n
WHERE SDO_RELATE(l.geom, n.geom, 'mask = COVEREDBY') = 'TRUE' AND l.naz_cnuts2 = 'Moravskoslezsko';
SELECT l.naz_lau1, l.geom
FROM okresy l, kraje n
WHERE SDO_TOUCH(n.geom, l.geom) = 'TRUE' AND l.naz_cnuts2 = 'Moravskoslezsko';