W y k ł a d SELECT. Polecenie wyświetlające zawartość tabeli. Składnia uproszczona: Temat: Polecenie SELECT. Plan wykładu:

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

SQL (ang. Structured Query Language)

SQL do zaawansowanych analiz danych część 1.

Podstawy SQL. 1. Wyświetl całość informacji z relacji ZESPOLY. 2. Wyświetl całość informacji z relacji PRACOWNICY

Autor: Joanna Karwowska

Struktura bazy danych

Bazy Danych i Usługi Sieciowe

Język SQL. Rozdział 6. Podzapytania Podzapytania proste i skorelowane, podzapytania w klauzuli SELECT i FROM, operatory ANY, ALL i EXISTS.

Grupowanie i funkcje agregujące

Podzapytania. Rozdział 5. Podzapytania. Podzapytania wyznaczające wiele krotek (1) Podzapytania wyznaczające jedną krotkę

Autor: Joanna Karwowska

Ćwiczenie 3 funkcje agregujące

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

Ćwiczenie zapytań języka bazy danych PostgreSQL

Język SQL. Rozdział 8. Język manipulowania danymi DML zadania

Podzapytania. Rozdział 5. Podzapytania. Podzapytania wyznaczające wiele krotek (1) Podzapytania wyznaczające jedną krotkę

Podzapytania. Rozdział 5. Podzapytania. Podzapytania wyznaczające wiele krotek (1) Podzapytania wyznaczające jedną krotkę

Zadania z SQLa (MS SQL Server)

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

Podstawy języka SQL cz. 2

Laboratorium Bazy danych SQL 3 1

Klasyczna Analiza Danych

Przestrzenne bazy danych Podstawy języka SQL

Język SQL. Rozdział 2. Proste zapytania

Plan. Wyświetlanie n początkowych wartości (TOP n) Użycie funkcji agregujących. Grupowanie danych - klauzula GROUP BY

Zadania SELECT do schematu EDS (EMP, DEPT, SALGRADE)

Wprowadzenie do języka SQL

Technologie baz danych

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

SQL praca z tabelami 4. Wykład 7

Laboratorium nr 5. Temat: Funkcje agregujące, klauzule GROUP BY, HAVING

Wymagania: Konstrukcja prostych zapytań w języku SQL, umiejętność wykorzystania funkcji wierszowych i agregujących.

ACESS- zadania z wykorzystaniem poleceń SQL

1.06 Wyświetl dane pracowników, którzy pracują w departamencie o nr (Id) różnym od 3.

Ćwiczenie 6 - DML. Tworzenie, modyfikacja i usuwanie krotek. Podstawy poleceń COMMIT i ROLLBACK. Ćwiczenie 6 DML. Wymagania: Bazy Danych

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

LAB 3 (część 1 Projektu)

Optymalizacja poleceń SQL Metody dostępu do danych

Systemy GIS Tworzenie zapytań w bazach danych

Podzapytania. Podzapytania nieskorelowane i skorelowane

Widok Connections po utworzeniu połączenia. Obszar roboczy

Podstawowe zapytania SELECT (na jednej tabeli)

Ćwiczenie rozpocznie się od wprowadzenia do laboratorium, po którym omówimy składnię ę polecenia INSERT pozwalającego ą na wstawianie krotek do

Wykład 05 Bazy danych

Grupowanie danych klauzula GROUP BY

Lista zadań nr Wyświetlić imię i nazwisko dla każdego pracownika z departamentu DEP T NO o numerze 000.

Język SQL. Rozdział 8. Język manipulowania danymi DML

Bazy danych i usługi sieciowe

Bazy danych SQL Server 2005

SQL Structured Query Language

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

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

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

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8

Bazy Danych. SQL Podstawy języka II: zapytania. Krzysztof Regulski WIMiIP, KISiM, B5, pok. 408

Ćwiczenie 5 podzapytania

Agregacja i Grupowanie Danych. Funkcje Agregacji. Opcje GROUP BY oraz HAVING

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

Rozdział 14 Funkcje analityczne

Grupowanie i funkcje agregacji. Grupowanie z użyciem rollup

PODZAPYTANIE (SUBSELECT)

Laboratorium nr 8. Temat: Podstawy języka zapytań SQL (część 2)

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

SQL: zadania + odpowiedzi, wszystkie podstawowe schematy.

LABORATORIUM 1

Ćwiczenie 4 - połączenia

Bazy danych wykład trzeci. Konrad Zdanowski

Język SQL. Rozdział 7. Zaawansowane mechanizmy w zapytaniach

Wykład 5. SQL praca z tabelami 2

Konstruowanie Baz Danych DQL agregacja danych

Język SQL podstawy zapytań

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

Jerzy Nawrocki, Wprowadzenie do informatyki

Laboratorium Bazy danych SQL 2

Przykład powyżej pokazuje, że w zapytaniu można umieszczać funkcje zarówno zdefiniowane w ramach środowiska, jak również własne.

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

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

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

CREATE TABLE logika (p BOOLEAN); INSERT INTO logika VALUES(true); INSERT INTO logika VALUES(false); INSERT INTO logika VALUES(NULL);

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

Podzapytania do tabel W miejscu w którym możemy użyć nazwy tabeli, możemy użyć podzapytania

BAZY DANYCH algebra relacyjna. Opracował: dr inż. Piotr Suchomski

Relacyjne bazy danych. Podstawy SQL

SQL Structured Query Language

Wykład XII. optymalizacja w relacyjnych bazach danych

Język SQL. Rozdział 5. Połączenia i operatory zbiorowe

Wykład 8. SQL praca z tabelami 5

3. Podzapytania, łączenie tabel i zapytań

Grupowanie i funkcje agregacji

Temat : SBQL 1 obiektowy język zapytań.

Złaczenia tablic: FROM, WHERE, JOIN

Język SQL, zajęcia nr 2

Podzapytania. SELECT atrybut_1, atrybut_2,... FROM relacja WHERE atrybut_n operator (SELECT atrybut_1, FROM relacja WHERE warunek

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

Wprowadzenie do baz danych

Ćwiczenie 1 podstawy

Sylabus do programu kształcenia obowiązującego od roku akademickiego 2014/15

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

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

1. Język T SQL wprowadzenie do tworzenia zapytań i modyfikowania bazy danych

Transkrypt:

W y k ł a d IV Temat: Polecenie SELECT Plan wykładu: Złączenia Podzapytania Agregaty SUM, AVG, COUNT, MIN, MAX GROUP BY 1 SELECT Polecenie wyświetlające zawartość tabeli. Składnia uproszczona: select atrybut, atrybut,... from relacja [where atrybut = wartość] Na przykład: select imie, data_urodzenia from studenci where wydzial = Informatyka 2

SELECT select imie, data_urodzenia from studenci where wydzial = Informatyka selekcja NR_INDEKS U IMIE DATA_UR ROK_S TUDIOW WYDZIAL 333456 tomek 12-05-1976 5 informatyka 333457 zosia 23-10-1980 4 informatyka 333458 madzia 01-01-1982 3 biologia 333459 zbyszek 03-12-1984 2 informatyka... Wynik zapytania: IMIE DATA_UR projekcja tomek 12-05-1976 zosia 23-10-1980 zbyszek 03-12-1984 3 Zadanie Podaj nazwisko, płacę i numer działu pracowników zarabiających powyżej 450 zł; posortuj malejąco według zarobków. sortowanie: ORDER BY nazwa_atrybutu [, nazwa atrybutu,...] [ASC DESC] 4

FILMY id_filmu tytul rezyser N 1 Złączenia GATUNKI id_gatunku nazwa opis 5 Złączenia FILMY id_filmu tytul rezyser N 1 GATUNKI id_gatunku nazwa opis Filmy (id_filmu, tytul, rezyser, gatunek) Gatunki (id_gatunku, nazwa, opis) Filmy id_filmu tytul re zyse r gatune k 1 S łodki drań Woody Allen 10 2Piła II D. Lynn Bousman 20 3 Bracie, gdzie jesteś?joel Coen 10 4 S przedawcy Kevin S mith 10 id_gatunku nazwa opis Gatunki 10 komedia ś mieszne ;) 20 horror przerażające.. 30 dramat wyciskacz lez 6

Filmy Złączenia - przykład id_filmu tytul re zyse r gatune k 1 S łodki drań Woody Allen 10 2Piła II D. Lynn Bousman 20 3 Bracie, gdzie jesteś?joel Coen 10 4 S przedawcy Kevin S mith 10 select F.tytul, G.nazwa from filmy F, gatunki G where F.gatunek = G.id_gatunku Gatunki id_gatunku nazwa opis 10 komedia ś mieszne ;) 20 horror przerażające.. 30 dramat wyciskacz lez tytul na zw a Słodki drań komedia P iła II horror Bracie, gdzie jesteś? komedia Sprzedawcy komedia 7 Złączenia - zadania 1. Podaj nazwiska pracowników oraz nazwy działów, w których pracują 2. Podaj nazwiska i płacę podstawową adiunktów pracujących w dziale SYSTEMY ROZPROSZONE 3. Podaj nazwiska pracowników, nazwy stanowisk oraz płace minimalne i maksymalne na tych stanowiskach 4. Podaj nazwiska pracowników pracujących na Piotrowie 5. Podaj nazwiska pracowników i nazwiska ich szefów 6. Podaj pracowników, którzy zarabiają więcej niż Koszlajda 8

Podzapytania Zapytanie zwraca pewien zbiór wynikowy, który może być użyty w innym zapytaniu (nadzapytaniu). Na przykład: Filmy id_filmu tytul re zyse r gatune k 1 S łodki drań Woody Allen 10 2 Piła II D. Lynn Bousman 20 3 Bracie, gdzie jesteś?joel Coen 10 4 Sprzedawcy Kevin Smith 10 Gatunki id_gatunku nazwa opis Podaj tytuły i reżyserów komedii: select tytul, rezyser from filmy where gatunek = ( select id_gatunku from gatunki where nazwa = komedia 10 komedia ś mieszne ;) 20 horror przerażające.. 30 dramat wyciskacz lez ) 9 Podzapytania - zadania 1. Podaj nazwiska pracowników pracujących w dziale ALGORYTMY 2. Podaj nazwiska pracowników pracujących na Piotrowie 3. Podaj nazwiska i datę zatrudnienia pracowników pracujących dłużej niż Koszlajda 4. Podaj nazwiska pracowników pracujących w tym samym dziale co Koszlajda 10

Podzapytania skorelowane Na przykład: Podaj nazwiska i datę zatrudnienia pracowników pracujących dłużej niż Koszlajda, i pracujących w tym samym dziale co on select nazwisko, convert(char(12),zatrudniony,104) as data from pracownicy p1 where zatrudniony < (select zatrudniony from pracownicy p2 where nazwisko = 'Koszlajda' and p1.id_dzialu = p2.id_dzialu) Zadanie: Znajdź pracowników, których płaca podstawowa (placa_pod) jest większa niż płaca maksymalna (placa_max) na ich stanowisku 11 Rozwiązanie Zadanie: Znajdź pracowników, których płaca podstawowa (placa_pod) jest większa niż płaca maksymalna (placa_max) na ich stanowisku select nazwisko, stanowisko, placa_pod from pracownicy p where placa_pod > (select placa_max from stanowiska s where s.nazwa = p.stanowisko) 12

SUM AVG COUNT MIN MAX Agregaty - sumuje - wylicza średnią - zlicza liczbę elementów - wyznacza wartość minimalną - wyznacza wartość maksymalną w zbiorze A B a 1 b 3 b 1 b 4 c 4 c 5 sum(b) = 18 avg(b) = 3 count(b) = 6 count(distinct B) = 4 min(b) = 1 max(b) = 5 13 Agregaty - przykład id_filmu tytul rezyser gatunek czas_trwania 1 S łodki drań Woody Allen 10 120 2 Piła II D. Lynn Bousman 20 130 3 Bracie, gdzie jesteś? Joel Coen 10 110 4 Sprzedawcy Kevin Smith 10 100 Podaj czas trwania najdłuższego filmu: select max(czas_trwania) from Filmy Podaj łączny czas trwania wszystkich komedii: select sum(czas_trwania) from Filmy f, gatunki g where f.gatunek = g.id_gatunku and g.nazwa = komiedia 14

Agregaty - zadania 1. Podaj faktyczną najniższą i najwyższą płacę asystentów 2. Podaj średni zarobek pracowników z działu 10 3. Podaj liczbę wszystkich pracowników 4. Podaj sumę zarobków podwładnych Brzezińskiego 5. Zlicz pracowników, którzy są szefami 6. Policz pracowników, którzy nie dostają płacy dodatkowej 15 Agregaty c.d. GROUP BY A B a 1 b 3 b 1 b 4 c 4 c 5 SELECT A, AVG(B)as srednia FROM TAB GROUP BY A A srednia a 1 b 2,666667 c 4,5 16

GROUP BY - zadania 1. Dla każdego działu podaj średni zarobek jego pracowników 2. Podaj liczbę pracowników na każdym stanowisku, zatrudnionych przed 1990 rokiem 3. Dla każdego szefa podaj sumę zarobków jego pracowników 17 Agregaty + podzapytania - zadania 1. Podaj nazwisko najgorzej zarabiającego pracownika 2. Podaj nazwiska pracowników zarabiających mniej niż średnia 3. Podaj nazwiska, płace i stanowisko pracowników zarabiających więcej niż średnia płaca na ich stanowisku 4. Dla każdego działu podaj nazwisko najlepiej zarabiającego pracownika 18