Systemy GIS Tworzenie zapytań w bazach danych



Podobne dokumenty
Przestrzenne bazy danych Podstawy języka SQL

Wprowadzenie do języka SQL

Relacyjne bazy danych. Podstawy SQL

- język zapytań służący do zapisywania wyrażeń relacji, modyfikacji relacji, tworzenia relacji

Relacyjne bazy danych. Podstawy SQL

SQL (ang. Structured Query Language)

Wybór wszystkich danych: SELECT * FROM employee Wybór określonych kolumn lub wyrażeń: SELECT first_name, last_name, salary FROM employee

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

Oracle11g: Wprowadzenie do SQL

Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski.

SQL Structured Query Language

P o d s t a w y j ę z y k a S Q L

BAZY DANYCH wprowadzenie do języka SQL. Opracował: dr inż. Piotr Suchomski

Język SQL. Rozdział 2. Proste zapytania

Paweł Rajba

Bazy danych. Dr inż. Paweł Kasprowski

Podstawy języka SQL. standardy SQL formułowanie zapytań operacje na strukturach danych manipulowanie danymi. Bazy danych s.5-1

SQL Server i T-SQL w mgnieniu oka : opanuj język zapytań w 10 minut dziennie / Ben Forta. Gliwice, Spis treści

SQL praca z tabelami 4. Wykład 7

Autor: Joanna Karwowska

Język SQL podstawy zapytań

Wykład 5. SQL praca z tabelami 2

opisuje nazwy kolumn, wyrażenia arytmetyczne, funkcje nazwy tabel lub widoków warunek (wybieranie wierszy)

Autor: Joanna Karwowska

Szkolenie Oracle SQL podstawy. Terminy lutego 2010 First Minute! 1100zł!

Ref. 7 - Język SQL - polecenia DDL i DML

Podstawy języka SQL. SQL Structured Query Languagestrukturalny

SQL - Structured Query Language. strukturalny język zapytań

3 Przygotowali: mgr inż. Barbara Łukawska, mgr inż. Maciej Lasota

Wstęp do SQL. copyright: KGiIS WGGiOŚ AGH

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

Bazy danych 2. Wykład 4 Structured Query Language (SQL)

1 DML - zapytania, część II Grupowanie Operatory zbiorowe DML - modyfikacja 7. 3 DCL - sterowanie danymi 9.

Ogólny plan przedmiotu. Strony WWW. Literatura BAZY DANYCH. Materiały do wykładu:

Przykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi.

Język SQL. instrukcja laboratoryjna. Politechnika Śląska Instytut Informatyki. laboratorium Bazy Danych

Wstęp 5 Rozdział 1. Podstawy relacyjnych baz danych 9

SQL - Structured Query Language -strukturalny język zapytań SQL SQL SQL SQL

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

SQL w 24 godziny / Ryan Stephens, Arie D. Jones, Ron Plew. Warszawa, cop Spis treści

Bazy danych. Polecenia SQL

Informatyka (5) SQL. dr inż. Katarzyna Palikowska Katedra Transportu Szynowego p. 4 Hydro

Wykład 6. SQL praca z tabelami 3

Microsoft SQL Server Podstawy T-SQL

SQL do zaawansowanych analiz danych część 1.

Wprowadzenie do baz danych

Wstęp Wprowadzenie do BD Podstawy SQL. Bazy Danych i Systemy informacyjne Wykład 1. Piotr Syga

Technologie baz danych

Projektowanie systemów baz danych

Konstruowanie Baz Danych SQL UNION, INTERSECT, EXCEPT

Język SQL. Rozdział 10. Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne.

Język DML. Instrukcje DML w różnych implementacjach SQL są bardzo podobne. Podstawowymi instrukcjami DML są: SELECT INSERT UPDATE DELETE

Język SQL, zajęcia nr 1

Informatyka sem. III studia inżynierskie Transport 2018/19 LAB 2. Lab Backup bazy danych. Tworzenie kopii (backup) bazy danych

Współczesne systemy baz danych

SELECT * FROM tabela WHERE warunek wybiera dane spełniające podany warunek

Bazy danych Access KWERENDY

Zaawansowane bazy danych i hurtownie danych studia zaoczne II stopnia, sem. I

SQL w praktyce. Miłej i owocnej nauki!!!

Modelowanie hierarchicznych struktur w relacyjnych bazach danych

Język SQL, zajęcia nr 2

Wstęp do relacyjnych baz danych. Jan Bartoszek

Bazy danych. Plan wykładu. Diagramy ER. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych. Podstawy modeli relacyjnych

Grupowanie i funkcje agregujące

Projekt jest finansowany ze środków Unii Europejskiej, Europejskiego Funduszu Społecznego i budŝetu państwa. Studia Podyplomowe dla Nauczycieli

Język SQL. Rozdział 4. Funkcje grupowe Funkcje grupowe, podział relacji na grupy, klauzule GROUP BY i HAVING.

Współczesne systemy baz danych

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8

Podstawowe zapytania SELECT (na jednej tabeli)

Bazy danych 6. Podzapytania i grupowanie. P. F. Góra

SQL Structured Query Language

Ćwiczenie zapytań języka bazy danych PostgreSQL

Bazy danych. Plan wykładu. Zależności funkcyjne. Wykład 2: Relacyjny model danych - zależności funkcyjne. Podstawy SQL.

Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion. Autor: Joanna Karwowska

Oracle PL/SQL. Paweł Rajba.

Program szkoleniowy Efektywni50+ Moduł IV Podstawy relacyjnych baz danych i język SQL

Zadania z SQLa (MS SQL Server)

Język SQL Złączenia. Laboratorium. Akademia Morska w Gdyni

BAZY DANYCH JĘZYK ZAPYTAŃ BAZ DANYCH SQL. Microsoft Access. Adrian Horzyk. Akademia Górniczo-Hutnicza

Wyświetl imie i nazwisko ucznia, nazwę przedmiotu z którego otrzymał ocenę niedostateczną. Nazwij tę kwerendę oceny niedostateczne.

Integralność danych Wersje języka SQL Klauzula SELECT i JOIN

Bazy danych. Andrzej Grzybowski. Instytut Fizyki, Uniwersytet Śląski

Widok Connections po utworzeniu połączenia. Obszar roboczy

Wyzwalacz - procedura wyzwalana, składowana fizycznie w bazie, uruchamiana automatycznie po nastąpieniu określonego w definicji zdarzenia

T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15

Wykład 7 Implementacja języka SQL w systemach baz danych Oracle sortowanie, funkcje agregujące i podzapytania.

BAZY DANYCH. Wykład 1: Wprowadzenie do baz danych. Marcin Czajkowski. Przygotowanie wykładu: Małgorzata Krętowska

Podstawy języka T-SQL : Microsoft SQL Server 2016 i Azure SQL Database / Itzik Ben-Gan. Warszawa, Spis treści

KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów

Bazy danych. Wykład V Kwerendy. Copyrights by Arkadiusz Rzucidło 1

Podstawy języka SQL Co to jest SQL? Możliwości SQL SQL*Plus

Bazy danych. Wprowadzenie. SKiBD

Bazy Danych. SQL Podstawy języka III: powtórzenie. Krzysztof Regulski WIMiIP, KISiM, B5, pok. 408

Perspektywy Stosowanie perspektyw, tworzenie perspektyw prostych i złożonych, perspektywy modyfikowalne i niemodyfikowalne, perspektywy wbudowane.

Autor: Joanna Karwowska

Marek Rakowski Podstawy zdania SELECT Strona 1 z 12

3. Podzapytania, łączenie tabel i zapytań

Transkrypt:

Systemy GIS Tworzenie zapytań w bazach danych Wykład nr 6

Analizy danych w systemach GIS Jak pytać bazę danych, żeby otrzymać sensowną odpowiedź......czyli podstawy języka SQL INSERT, SELECT, DROP, UPDATE

Podstawy SQL SQL (ang. Structured Query Language) to strukturalny język zapytań używany do tworzenia, modyfikowania baz danych, oraz do umieszczania i pobierania danych z baz danych. Standardowe typy zapytań: CREATE, ALTER, DROP, INSERT, UPDATE, SELECT, DELETE

Standard SQL Podstawowe koncepcje języka SQL opierają się na standardzie nieformalnie nazywanym SQL/92. Jego pełna nazwa to: Międzynarodowy Standardowy Język Baz Danych SQL (1992) Spotykane w praktyce programy nie implementują w pełni przedstawianego tu standardu. Z drugiej strony istniejące implementacje rozszerzają niektóre aspekty standardu. Często określa się taką sytuację jako nadzbiór podzbioru.

Znaczenie języka SQL Język zapytań poprzez deklaratywny dostęp do danych Składnia dosyć łatwa i naturalna (choć daleka od doskonałości) Możny protektor (IBM) Standardowy język dostępu do danych dla wszystkich liczących się RDBMS normy ANSI i ISO (wiele dialektów słabo zgodnych z normami) Szczególnie przydatny w systemach klient-serwer i wielowarstwowych (zasada zapytanie do danych ) Części języka SQL: DQL (Data Query Language) do wyszukiwania danych zdania SELECT DML (Data Manipulation Language) do modyfikacji danych zdania INSERT, UPDATE, DELETE DDL (Data Definition Language) do tworzenia i modyfikacji struktur danych zdania CREATE, DROP, ALTER i inne

Do czego służą zapytania? CREATE ALTER DROP INSERT UPDATE SELECT DELETE Tworzy nową tabelę lub bazę danych Modyfikuje definicję istniejących tabel Usuwa tabele, pola Wstawia do tabeli rekordy Modyfikuje dane w istniejących rekordach Pobiera dane informacji z tabeli Usuwa elementy z tabeli

SELECT SELECT najczęściej używane polecenie języka SQL Pobranie danych z tabel, czyli Daj mi dane spełniające następujący warunek SELECT [nazwa pól] FROM [nazwy tabel] WHERE [jakieś wyrażenie] ORDER BY [nazwy pól]

Przykłady zapytań SQL

Odczyt całej tabeli Do odczytania wszystkich kolumn tabeli służy zapytanie, w którym zamiast nazw kolumn używa się gwiazdki Kolejność zwróconych wierszy jest losowa SELECT * FROM tbl_stacje_trafo

Wybór uporządkowany Kolumny wymienia się w klauzuli SELECT Klauzula ORDER BY wymusza kolejność wierszy Do zmiany uporządkowania służą klauzule ASC (domyślne) i DESC SELECT nazwa_stacji_trafo, moc_stacji_kw FROM tbl_stacje_trafo ORDER BY nazwa_stacji_trafo ASC

Warunki WHERE Klauzula WHERE wybiera wiersze spełniające określony warunek Można tworzyć złożone warunki wykorzystując operatory logiczne AND, OR, NOT SELECT id_stacji_trafo FROM tbl_stacje_trafo WHERE moc_stacji_kw > 100 AND typ_trafo = "olejowy"

Złączenie wyrażone przez WHERE Złączenie można wyrazić zwykłym warunkiem WHERE Pominięcie warunku daje iloczyn kartezjański wierszy! Użyto aliasów kolumn i tabel SELECT id_stacji_trafo AS nr_stacji FROM tbl_stacje_trafo T, tbl_powiaty P WHERE T.id_powiatu = P.id_powiatu

Złączenia wyrażone przez JOIN Złączenie można też wyrazić specjalną konstrukcją JOIN Jest to czytelniejsze i może być łatwiejsze do optymalizacji SELECT id_stacji_trafo FROM tbl_stacje_trafo T JOIN tbl_powiaty P ON T.id_powiatu = P.id_powiatu WHERE T.nazwa_powiatu = "wejherowski"

NULL Interpretacja wartości NULL wartość nieznana wartość nieadekwatna/nieistniejąca Użycie NULL interpretacja NULL w warunkach w zapytaniu warunek o wartości NULL jest uważany za niespełniony w więzach kontrolnych warunek o wartości NULL jest uważany za spełniony NULL w indeksach: wartości zerowe mogą nie być uwzględnione w indeksach w przypadkach wątpliwych należy używać funkcji zastępującej NULL wartością zastępczą, np. NVL Do reprezentowania wartości nieznanej lub nieadekwatnej należy zawsze używać NULL NULL w wyrażeniach Wyrażenie, którego operand ma wartość NULL także ma wartość NULL Wyjątki: funkcje agregujące wyrażenia logiczne: NULL OR TRUE NULL AND FALSE Do wykrywania wartości NULL używać operatorów IS NULL, IS NOT NULL nie używać porównań SELECT id_stacji_trafo FROM tbl_stacje_trafo T WHERE T.nazwa_powiatu IS NOT NULL

Klauzula DISTINCT Wyszukanie niejednakowych wierszy Klauzula DISTINCT eliminuje z wyniku zapytania powtórzone wiersze Przydaje się, gdy chcemy wyszukać wszystkie występujące wartości jakiej danej bez względu na liczbę wystąpień SELECT DISTINCT id_powiatu FROM tbl_stacje_trafo

Zapytania z funkcjami grupującymi Funkcje grupujące (agregujące) COUNT zlicza wiersze COUNT(*) wszystkie wiersze COUNT(kolumna) pomija wartości NULL MIN, MAX znajdują najmniejszą/największą wartość; SUM sumuje; AVG oblicza średnią arytmetyczną; VARIANCE, STDDEV obliczają wariancję i odchylenie standardowe Klauzula GROUP BY wyznacza sposób grupowania musi w niej się znaleźć cała zawartość klauzuli oprócz elementów używających funkcji grupujących Klauzule WHERE i JOIN wybierają wiersze przed agregacją Agregacja niejednakowych wartości jest możliwa z użyciem klauzuli DISTINCT SELECT COUNT(DISTINCT id_powiatu) FROM tbl_stacje_trafo

Wyrażenia w SQL Wyrażenia Złożone ze stałych, kolumn, operatorów, wywołań funkcji Konwersje są niejawne zaleca się wykonywanie jawnych konwersji Stałe Liczbowe wprost Znakowe w '...' Daty w formacie domyślnym lub przez funkcje konwersji Logiczne TRUE i FALSE NULL Operatory Arytmetyczne: + - * / Logiczne: AND, OR, NOT Konkatenacja wartości znakowych: Porównania: =,!=, >, <, >=, <=, <> BETWEEN x AND y LIKE Funkcje wbudowane Różne w każdym z DBMS Typowe rodzaje agregujące znakowe matematyczne data/czas konwersje Funkcje użytkownika Dostępne w lepszych DBMS Pisane w specjalnym wbudowanym języku By móc być użyte w SQL muszą spełniać szereg warunków