Úvod do prostorového SQL - geometrie

Otázky

1. Vypište souřadnice letišť.
Nové Město POINT(-618953.172749 -1027812.100113)
2. Vypište nejjižněji položené mezinárodní letiště v ČR.
Kunovice
3. Seřaďte sestupně kraje podle jejich výměry.
Středočeský kraj 10928.354039717426
4. Najděte kraje, které obklopují kompletně jiný kraj.
Středočeský kraj
5. Vypište centroidy krajů.
Hlavní město Praha POINT(-739951.993507 -1045726.528215)
6. Spočítejte délku dálnic v km.
776
7. Spočítejte délku silnic podle jejich kategorie.
2 462.0
8. Určete souřadnicový systém datové vrstvy letisť.
5514
9. Transformujte letiště do souřadnicové systému WGS-84. Vypište letiště, které se nachází v zeměpisné délce mezi 14:30 a 15:30.
Hodkovice POINT(15.074613 50.65438)

Řešení

1. Vypište souřadnice letišť.
Nové Město POINT(-618953.172749 -1027812.100113)
SELECT nazev, st_astext(geom)
FROM   letiste;
SELECT nazev, st_x(geom) as x, st_y(geom) as y
FROM letiste;
2. Vypište nejjižněji položené mezinárodní letiště v ČR.
Kunovice
SELECT   nazev
FROM     letiste
WHERE    statut = 1
ORDER BY st_y(geom) asc
LIMIT 1;
3. Seřaďte sestupně kraje podle jejich výměry.
Středočeský kraj 10928.354039717426
SELECT naz_cznuts3,st_area(geom)/1e6 as vymera
FROM krajepolygony
ORDER BY vymera DESC;
4. Najděte kraje, které obklopují kompletně jiný kraj.
Středočeský kraj
SELECT naz_cznuts3
FROM krajepolygony
WHERE st_nrings(geom) > 1;
5. Vypište centroidy krajů.
Hlavní město Praha POINT(-739951.993507 -1045726.528215)
SELECT naz_cznuts3,st_astext(st_centroid(geom))
FROM krajepolygony
ORDER BY naz_cznuts3;
6. Spočítejte délku dálnic v km.
776
SELECT round(sum(st_length(geom)) / 1e3)
FROM silnice_2015
WHERE trida == 1;
7. Spočítejte délku silnic podle jejich kategorie.
2 462.0
SELECT trida, round(sum(st_length(geom))/1e3) as delka_km
FROM silnice_2015
GROUP BY trida
ORDER BY delka_km;
8. Určete souřadnicový systém datové vrstvy letisť.
5514
SELECT distinct st_srid(geom)
FROM letiste;
9. Transformujte letiště do souřadnicové systému WGS-84. Vypište letiště, které se nachází v zeměpisné délce mezi 14:30 a 15:30.
Hodkovice POINT(15.074613 50.65438)
SELECT InitSpatialMetadata();
SELECT nazev, st_astext(geom_wgs84)
FROM (
 SELECT nazev, st_transform(geom, 4326) as geom_wgs84
 FROM letiste
 WHERE st_x(geom_wgs84) > 14.5 AND st_x(geom_wgs84) < 15.5
);