SQl - podstawy zapytań

  • Upload
    yuval

  • View
    55

  • Download
    0

Embed Size (px)

DESCRIPTION

SQl - podstawy zapytań. Plan prezentacji. Krótka historia języka SQL Cechy języka SQL Przykładowa baza danych Podstawy zapytań - operacje na modelu relacyjnym Polecenie SELECT – zapytania proste Polecenie SELECT – łączenie tabel Polecenie SELECT – wykorzystanie funkcji agregujących - PowerPoint PPT Presentation

Citation preview

  • SQl - podstawy zapytainformatyka +*

    informatyka +

  • Plan prezentacjiinformatyka +*

    Krtka historia jzyka SQLCechy jzyka SQLPrzykadowa baza danychPodstawy zapyta - operacje na modelu relacyjnym Polecenie SELECT zapytania prostePolecenie SELECT czenie tabelPolecenie SELECT wykorzystanie funkcji agregujcychPolecenie SELECT zapytania zoonePolecenie SELECT co jeszcze potrafi?

    informatyka +

  • informatyka +*Krtka historia jzyka SQL kroki milowe1970 - publikacj E.F.Codda pt. A Relational Model of Data for Large Shared Data Banks. ( pol. Relacyjny model danych dla duych wspdzielonych bankw danych). - w IBM powsta jzyk SEQUEL (ang. Structured English Query Language Stukturalny Angielski Jzyk Zapyta)1979 - firma ORACLE wypucia na rynek pierwszy komercyjny system zarzdzania bazami danych oparty o SQL. do dnia dzisiejszego trwa burzliwy rozwj tego jzyka

    informatyka +

  • informatyka +*Standardy jzyka SQLKrtka historia standardw jzyka SQL :

    1986: pierwszy standard SQL (SQL-86),1989: nastpny standard SQL (SQL-89),1992: wzbogacona wersja standardu (SQL-92 lub SQL 2),1999: standardu rozszerzonego o pewne cechy obiektowoci (SQL 3)2003: Kolejne rozszerzenie standardu (m.in. wczenie do standardu jzyka XML) - SQL 42006 : Niewielkie rozszerzenie standardu2008 : Kolejne niewielkie rozszerzenie standardu

    informatyka +

  • informatyka +*Standardy jzyka SQLOpracowywaniem i publikowanie standardw SQL zajmuj si organizacje :

    ISO (ang. International Organization for Standarization)

    ANSI (ang. American National Standards Institute).

    Standard jzyka to wytyczne dla producentw Systemw Zarzdzania Bazami Danych

    Pomimo istnienia standardw jezyka SQL rzne implementacje rnia si od siebie (nieznacznie)

    informatyka +

  • Plan prezentacjiinformatyka +*

    Krtka historia jzyka SQLCechy jzyka SQLPrzykadowa baza danychPodstawy zapyta - operacje na modelu relacyjnym Polecenie SELECT zapytania prostePolecenie SELECT czenie tabelPolecenie SELECT wykorzystanie funkcji agregujcychPolecenie SELECT zapytania zoonePolecenie SELECT co jeszcze potrafi?

    informatyka +

  • informatyka +*Cechy jzyka SQL

    SQL jest jzykiem IV generacjii co z tego e IV generacjiSQL jest jzykiem deklaratywnym ?????????W jzyku SQL deklarujemy co chcemy osign bez okrelania jak to naley wykona

    informatyka +

  • informatyka +*Cechy jzyka SQL

    Jzyk SQL dzielimy na trzy podstawowe czci:

    Jzyk Definiowania Danych DDL (ang. Data Definition Language

    Jzyk Manipulacji Danymi DML (ang. Data Manipulation Language

    Jzyk Kontroli Danych DCL (ang. Data Control Language)

    informatyka +

  • informatyka +*Cechy jzyka SQL

    Jzyk Definiowania Danych DDL (ang. Data Definition Language

    Polecenia :

    CREATE definiowanie obiektw w bazie danych

    ALTER - modyfikowanie obiektw w bazie danych

    DROP - usuwanie obiektw z bazy danych

    informatyka +

  • informatyka +*Cechy jzyka SQL

    Przykad polecenia DDL :

    CREATE TABLE Uczniowie (IdUcznia int IDENTITY(1,1) NOT NULL,Nazwisko varchar(50) NOT NULL,Imie varchar(50) NOT NULL,DataUrodzenia date NOT NULL,CzyChlopak bit NOT NULL,Pesel varchar(11) NULL,CONSTRAINT PK_uczniowie PRIMARY KEY CLUSTERED (IdUcznia ASC))

    informatyka +

  • informatyka +*Cechy jzyka SQL

    Jzyk Manipulacji Danymi DML (ang. Data Manipulation Language

    Polecenia :INSERT wstawianie do tabeli nowych wierszy

    UPDATE - modyfikowanie wierszy w tabeli

    DELETE - usuwanie wierszy z tabeli

    MERGE - zbiorcze modyfikowanie tabeli

    SELECT pobieranie danych z tabel (zapytania)

    informatyka +

  • informatyka +*Cechy jzyka SQL

    Przykad polecenia DML :

    INSERT INTO Uczniowie (Nazwisko, Imie, DataUrodzenia, CzyChlopak, Pesel) VALUES(Kot, Jan, 1991-07-12,true, 91071276538)

    SELECT Nazwisko, Imie, PeselFROM UczniowieWHERE CzyChlopak=trueORDER BY nazwisko

    informatyka +

  • informatyka +*Cechy jzyka SQL

    Jzyk Kontroli Danych DCL (ang. Data Control Language)

    Polecenia :

    GRANT przydzielenie prawa do danych

    REVOKE pozbawienie prawa do danych

    DENY - bezwarunkowe pozbawienie prawa do danych

    informatyka +

  • informatyka +*Cechy jzyka SQL

    Praca z wykorzystaniem SQL moe by realizowana na kilka sposobw :

    poprzez interaktywne zadawanie pyta do bazy (monitor),

    budowanie skryptw (zbioru wsadowo wykonywanych zapyta w SQL),

    osadzanie kodu (pojedynczych zapyta i caych procedur) SQL w innych jzykach programowania (na poziomie aplikacji),

    procedur skadowanych (na poziome bazy danych).

    informatyka +

  • Plan prezentacjiinformatyka +*

    Krtka historia jzyka SQLCechy jzyka SQLPrzykadowa baza danychPodstawy zapyta - operacje na modelu relacyjnym Polecenie SELECT zapytania prostePolecenie SELECT czenie tabelPolecenie SELECT wykorzystanie funkcji agregujcychPolecenie SELECT zapytania zoonePolecenie SELECT co jeszcze potrafi?

    informatyka +

  • Przykadowa baza danychinformatyka +*

    informatyka +

  • Przykadowa baza danychPisanie zapyta w jzyku SQL wymaga dobrej znajomoci bazy danych do ktrej te zapytania si odnoszinformatyka +*

    informatyka +

  • Plan prezentacjiinformatyka +*

    Krtka historia jzyka SQLCechy jzyka SQLPrzykadowa baza danychPodstawy zapyta - operacje na modelu relacyjnym Polecenie SELECT zapytania prostePolecenie SELECT czenie tabelPolecenie SELECT wykorzystanie funkcji agregujcychPolecenie SELECT zapytania zoonePolecenie SELECT co jeszcze potrafi?

    informatyka +

  • Podstawowe operacje realizowane na modelu relacyjnyminformatyka +*Realizacja zapyta opiera si na trzech podstawowych operacjach wykonywanych na modelu relacyjnym:

    Operacja projekcji (zwana take rzutowaniem)

    Operacja selekcji

    Operacja czenia

    informatyka +

  • Podstawowe operacje realizowane na modelu relacyjnyminformatyka +*Operacja projekcji

    Tabela wyjciowaWykonanie operacji projekcjiTabela wynikowa po operacji projekcji

    informatyka +

  • Podstawowe operacje realizowane na modelu relacyjnyminformatyka +*Operacja selekcji

    Tabela wyjciowaWykonanie operacji selekcjiTabela wynikowaWarunek selekcjiIdklasy=2

    informatyka +

  • Podstawowe operacje realizowane na modelu relacyjnyminformatyka +*Operacja czenia

    Wykonanie operacji czeniaTabela wyjciowaTabela doczaniaTabela wynikowa

    informatyka +

  • Podstawowe operacje realizowane na modelu relacyjnyminformatyka +*Przedstawione operacje wykonywane na modelu relacyjnym s podstawa realizacji zapyta

    informatyka +

  • Plan prezentacjiinformatyka +*

    Krtka historia jzyka SQLCechy jzyka SQLPrzykadowa baza danychPodstawy zapyta - operacje na modelu relacyjnym Polecenie SELECT zapytania prostePolecenie SELECT czenie tabelPolecenie SELECT wykorzystanie funkcji agregujcychPolecenie SELECT zapytania zoonePolecenie SELECT co jeszcze potrafi?

    informatyka +

  • Polecenie SELECTinformatyka +*SELECT [TOP n] lista_kolumnFROM lista_tabelWHERE warunki_selekcjiGROUP BY lista_kolumn_grupowaniaHAVING warunek_selekcjiORDER BY lista_kolumn_porzadkowania

    informatyka +

  • Polecenie SELECT- zapytania prosteinformatyka +*SELECT * FROM Uczniowie

    Okrelona zostaa , w opcji FROM, tabela z ktrej pobieramy dane a znaczek * powoduje dostarczenie do wyniku zapytania wszystkich dostpnych w tabeli kolumnPrzykadowy wynik zapytania

    informatyka +

  • Realizacja operacji projekcjiinformatyka +*SELECT Nazwisko, Imie, Pesel, CzyChlopakFROM Uczniowie

    Okrelona zostaa , w opcji FROM, tabela z ktrej pobieramy dane i wymieniono liste kolumn, ktre maja si pojawi w wynikuPrzykadowy wynik zapytania

    informatyka +

  • Realizacja operacji projekcji i selekcjiinformatyka +*SELECT Nazwisko, Imie, Pesel, CzyChlopakFROM UczniowieWHERE CzyChlopak=1

    W klauzuli WHERE dodano warunek selekcjiPrzykadowy wynik zapytania

    informatyka +

  • Porzdkowanie wyniku zapytaniainformatyka +*SELECT Nazwisko, Imie, Pesel, IdklasyFROM UczniowieWHERE Idklasy=1 OR Idklasy=2ORDER BY Idklasy ASC, Nazwisko DESC

    Dodano klauzule ORDER BY realizujc porzdkowanie wyniku zapytania (opcja ASC rosnco, DESC malejco)Przykadowy wynik zapytania

    informatyka +

  • Przeksztacanie danychinformatyka +*SELECT Nazwisko, Imie, Pesel, CASE CzyChlopak WHEN 1 THEN Mczyzna ELSE Kobieta END as PeFROM UczniowieWHERE Idklasy=2

    Kolumna o nazwie Pe powstaa w wyniku przeksztacenia wartoci zapisanych w tabeliPrzykadowy wynik zapytania

    informatyka +

  • Plan prezentacjiinformatyka +*

    Krtka historia jzyka SQLCechy jzyka SQLPrzykadowa baza danychPodstawy zapyta - operacje na modelu relacyjnym Polecenie SELECT zapytania prostePolecenie SELECT czenie tabelPolecenie SELECT wykorzystanie funkcji agregujcychPolecenie SELECT zapytania zoonePolecenie SELECT co jeszcze potrafi?

    informatyka +

  • informatyka +*Normalizacja podstawa projektowaniaFakturyI co tutaj nie gra Redundancja!!!!!!!!!!!!!!

    IdfakturyNumerData_wNettoVatFirmaNipUlicaMiasto1234/0811.08.08 345.6771.22Wedel1234652789Nowa 3Warszawa243/0812.08.08763.00167.00Wedel1234652789Nowa 3Warszawa301/200815.08.08322.0068.65Zotex6573298722Mia 7Sopot411.08/122.09.08100.0022.00Koral5582998721Dobra 1Opole534w/0828.09.08882.00187.00Wedel1234652789Nowa 3Warszawa6987/0802.10.08250.5558.12Zotex6573298722Mia 7Sopot7002.0811.10.08891.00 201.15Zotex6573298722Mia 7Sopot

    informatyka +

  • informatyka +*Normalizacja podstawa projektowaniaFakturyFirmyIdFirmy

    1

    2

    3Idfirmy1

    1

    23

    1

    2

    2Klucz obcy

    IdfakturyNumerData_wNettoVat1234/0811.08.08 345.6771.22243/0812.08.08763.00167.00301/200815.08.08322.0068.65411.08/122.09.08100.0022.00534w/0828.09.08882.00187.006987/0802.10.08250.5558.127002.0811.10.08891.00 201.15

    FirmaNipUlicaMiastoWedel1234652789Nowa 3WarszawaZotex6573298722Mia 7SopotKoral5582998721Dobra 1Opole

    1Wedel1234652789Nowa 3Warszawa

    1Wedel1234652789Nowa 3Warszawa

    1Wedel1234652789Nowa 3Warszawa

    2Zotex6573298722Mia 7Sopot

    3Koral5582998721Dobra Warszawa

    2Zotex6573298722Mia 7Sopot

    2Zotex6573298722Mia 7Sopot

    informatyka +

  • Operacja czeniainformatyka +*SELECT Uczniowie.* , Klasy.*FROM Uczniowie JOIN KlasyON Uczniowie.Idklasy=Klasy.Idklasy

    Do wiersza opisujcego ucznia zosta doaczony odpowiedni wiersz z tabeli klasyPrzykadowy wynik zapytania

    informatyka +

  • Operacja czeniainformatyka +*SELECT Uczniowie.Nazwisko, Uczniowie.Imie, CASE CzyChlopak WHEN 1 THEN Mczyzna ELSE Kobieta END as Pe, Klasy.Nazwa, Klasy.RokSzkolny FROM Uczniowie JOIN Klasy ON Uczniowie.Idklasy=Klasy.Idklasy WHERE YEAR(Uczniowie.DataUrodzenia)=1992 ORDER BY Pe, Nazwisko DESC

    Zapytanie wykonujce operacje projekcji, selekcji, czenia, przeksztaca dane i porzdkuje wynik zapytaniaPrzykadowy wynik zapytania

    informatyka +

  • Rozwizanie problemu Chcemy napisa zapytanie, ktre przygotuje wykaz uczniw (nazwisko i imi) oraz dane nauczyciela (nazwisko i imi oraz stopie zawodowy), ktry wystawi ocen i dat wystawienia oceny tym uczniom, ktrzy w roku 2009 otrzymali z fizyki ocen 5, wynik uporzdkowa malejco wedug daty wystawienia oceny.informatyka +*

    informatyka +

  • Rozwizanie problemuSELECT Uczniowie.Nazwisko+ +Uczniowie.Imie AS Uczen, Nauczyciele.Nazwisko+ Nauczyciele.Imie AS Nauczyciel, Oceny.DataWystawienia, Oceny.OcenaFROM Uczniowie JOIN Oceny ON Uczniowie.Iducznia=Oceny.IdUcznia JOIN Nauczyciele ON Nauczyciele.IdNauczyciela=Oceny.IdNauczyciela JOIN Przedmioty ON Oceny.Idprzedmiotu=Przedmioty.IdprzedmiotuWHERE YEAR(DataWystawienia) =2009 AND Ocena=5 AND Przedmioty.Nazwa=FizykaORDER BY DataWystawienia DESCinformatyka +*

    informatyka +

  • Rozwizanie problemuinformatyka +*Przykadowy wynik zapytania

    informatyka +

  • Zczenie zewntrzneinformatyka +*Do tej pory, domylnie, realizowalimy tzw. zczenie wewntrzne czyli w wyniku zapytania pojawiay si tylko te wiersze dla ktrych speniony by warunek zczenia

    SQL umoliwia wykonanie zczenia zewntrznego czyli umoliwia doczenie do wyniku zapytania take te wiersze dla ktrych warunek zczenia nie jest speniony

    Zczenie zewntrzne omwimy na przykadzie

    informatyka +

  • Zczenie zewntrzneinformatyka +*SELECT Uczniowie.Nazwisko, Uczniowie.Imie, Oceny.DataWystawienia, OcenaFROM Uczniowie LEFT OUTER JOIN Oceny ON Uczniowie.iducznia=Oceny.Iducznia AND Oceny.Ocena=2 AND YEAR(DataWystawienia)=2009 AND MONTH(DataWystawienia)=2Przygotujemy zapytanie w ktrym bd wszyscy uczniowie wraz z informacja kiedy otrzymali w lutym roku 2009 ocen miern

    informatyka +

  • Zczenie zewntrzneinformatyka +*Przykadowy wynik zapytania

    informatyka +

  • Plan prezentacjiinformatyka +*

    Krtka historia jzyka SQLCechy jzyka SQLPrzykadowa baza danychPodstawy zapyta - operacje na modelu relacyjnym Polecenie SELECT zapytania prostePolecenie SELECT czenie tabelPolecenie SELECT wykorzystanie funkcji agregujcychPolecenie SELECT zapytania zoonePolecenie SELECT co jeszcze potrafi?

    informatyka +

  • Funkcje agregujceinformatyka +*Zapytania SQL mog by take wykorzystane do wykonywania oblicze na podstawie danych zawartych w tabelach. Do tego celu su funkcje agregujce.

    Jzyk SQL udostpnia pi podstawowych funkcji agregujcych;COUNT oblicza ilo wierszy otrzymanych w wyniku zapytania,SUM sumuje zawarto kolumny (lub wyraenia obliczonego na podstawie danych) dla wszystkich wierszy w wyniku zapytania, AVG oblicza redni arytmetyczn zawartoci kolumny (lub wyraenia obliczonego na podstawie danych) dla wszystkich wierszy w wyniku zapytania, MIN okrela warto minimaln dla kolumny w wyniku zapytania, MAX okrela warto maksymaln dla kolumny w wyniku zapytania.

    informatyka +

  • Funkcje agregujceinformatyka +*SELECT COUNT(*) AS IluUczniowFROM Uczniowie

    SELECT COUNT(*) AS IluUczniowFROM Uczniowie JOIN Klasy ON Uczniowie.idklasy=Klasy.idklasyWHERE Klasy.Nazwa='IIa'Funkcja agregujca uyta w zapytaniu powoduje, ze w wyniku otrzymujemy jeden wiersz z wynikiem dziaania funkcji agregujcej

    informatyka +

  • Funkcje agregujce i grupowanie danychinformatyka +*SELECT Klasy.Nazwa, COUNT(*) AS IluUczniowFROM Uczniowie JOIN Klasy ON Uczniowie.idklasy=Klasy.idklasyGROUP BY Klasy.Nazwa

    Wykorzystalimy klauzul GROUP BY w celu rozbicia dziaania funkcji agregujcej dla wierszy zawierajcych t sama warto dla kolumny Klasy.Nazwa

    informatyka +

  • Funkcje agregujce i grupowanie danychinformatyka +*SELECT Uczniowie.Nazwisko, Uczniowie.Imie, AVG(Oceny.Ocen) as redniaFROM Uczniowie JOIN Oceny ON Uczniowie.Iducznia=Oceny.IdUcznia JOIN Uczniowie.Idklasy=Klasy.IdklasyWHERE YEAR(Oceny.DataWystawienia)=2009 AND Klasy.Nazwa=IIaGROUP BY Uczniowie.Nazwisko, Uczniowie.ImieORDER BY rednia DESC

    Lista uczniw z klasy IIa oraz ich redni ocen otrzymanych w roku 2009

    informatyka +

  • Funkcje agregujce i grupowanie danychinformatyka +*SELECT Uczniowie.Nazwisko, Uczniowie.Imie, AVG(Oceny.Ocen) as redniaFROM Uczniowie JOIN Oceny ON Uczniowie.Iducznia=Oceny.IdUcznia JOIN Uczniowie.Idklasy=Klasy.IdklasyWHERE YEAR(Oceny.DataWystawienia)=2009 AND Klasy.Nazwa=IIaGROUP BY Uczniowie.Nazwisko, Uczniowie.ImieHAVING AVG(Oceny.Ocena) > 3.00ORDER BY rednia

    Lista uczniw z klasy IIa oraz ich redni ocen otrzymanych w roku 2009 - tylko ci uczniowie ktrych srednia przekracza 3.00Klauzul HAVING nazywamy opnionym warunkiem selekcji

    informatyka +

  • Plan prezentacjiinformatyka +*

    Krtka historia jzyka SQLCechy jzyka SQLPrzykadowa baza danychPodstawy zapyta - operacje na modelu relacyjnym Polecenie SELECT zapytania prostePolecenie SELECT czenie tabelPolecenie SELECT wykorzystanie funkcji agregujcychPolecenie SELECT zapytania zoonePolecenie SELECT co jeszcze potrafi?

    informatyka +

  • Zapytania zooneinformatyka +*Polecenie SELECT jzyka SQL umoliwia zagniedanie zapyta, czyli wykorzystanie zapytania w wewntrz innego zapytania.

    Dziki tej waciwoci mona za pomoc jednego polecenia wykonywa bardzo zoone operacje na danych.

    Omwimy to, chcc przygotowa list uczniw (zawierajc nazwisko i imi ucznia oraz nazw klasy), ktrzy w roku 2009 nie otrzymali oceny niedostatecznej z fizyki.

    Naley zwrci uwag na fakt, e chcemy pobra z bazy dane, ktre nie s bezporednio w niej zapisane, bo jeeli ucze nie otrzyma oceny to w bazie danych nie ma adnego zapisu tego faktu.

    Rozwizujc ten problem korzystamy z pewnych zalenoci logicznych.

    informatyka +

  • Zapytania zooneinformatyka +*Pomylmy o tym problemie jako o dziaaniu na nastpujcych zbiorach: A zbir wszystkich uczniw,

    B zbir uczniw, ktrzy otrzymali w roku 2009 ocen niedostateczn z fizyki,

    C poszukiwany zbir uczniw, ktrzy w roku 2009 nie otrzymali oceny niedostatecznej z fizyki.

    Wyraenie: C = A B opisuje rozwizanie naszego problemu, czyli poszukiwany zbir moemy otrzyma jako rnic dwch innych zbiorw.

    informatyka +

  • Zapytania zooneinformatyka +*SELECT Uczniowie.Nazwisko, Uczniowie.Imie, Klasy.Nazwa,FROM Uczniowie JOIN Klasy ON Uczniowie.idklasy=Klasy.idklasy Zapytanie tworzce zbir A

    (SELECT DISTINCT Iducznia FROM Oceny JOIN Przedmioty ON Oceny.Idprzedmiotu=Przedmioty.Idprzedmiotu WHERE Przedmioty.Nazwa=Fizyka AND YEAR(Oceny.DataWystawienia)=2009 AND Oceny.Ocena=2)Zapytanie tworzce zbir BWHERE Iducznia NOT IN Warunek rnicy zbiorw

    informatyka +

  • informatyka +*Pokazalimy jeden przykad zapytania zoonego, pokazujcy dodatkowe moliwoci, jakimi dysponujemy przy pisaniu zapyta do baz danych z wykorzystaniem jzyka SQL.

    Trudno wymieni wszystkie sytuacje, w ktrych mona wykorzystywa podzapytania ale jest jedna zasada oglna:

    Podzapytanie moe by wykorzystane wszdzie tam, gdzie ma sens wynik tego podzapytaniaZapytania zoone

    informatyka +

  • Plan prezentacjiinformatyka +*

    Krtka historia jzyka SQLCechy jzyka SQLPrzykadowa baza danychPodstawy zapyta - operacje na modelu relacyjnym Polecenie SELECT zapytania prostePolecenie SELECT czenie tabelPolecenie SELECT wykorzystanie funkcji agregujcychPolecenie SELECT zapytania zoonePolecenie SELECT co jeszcze potrafi?

    informatyka +

  • Co jeszcze potrafi??informatyka +*SELECT Klasy.Nazwa, Klasy.RokSzkolny FROM Klasy FOR XML AUTO,ROOT('ListaKlas'),ELEMENTS

    Tworzenie wyniku zapytania w jzyku XML

    Ia 2008/2009 IIa 2008/2009 Ib 2008/2009 IIb 2008/2009

    informatyka +

  • Co jeszcze potrafi??informatyka +*Operacje na zbiorach danych z wykorzystaniem operatorw UNION, EXCEPT i INTERSECTSELECT Nazwisko, Imie, Pesel FROM UczniowieWHERE idklasy=1 UNIONSELECT Nazwisko, Imie, Pesel FROM UczniowieWHERE idklasy=2

    informatyka +

  • Co jeszcze potrafi??informatyka +*Zapytanie, ktre przygotuje list uczniw z klasy o id klasy=1 za wyjtkiem tych, ktrzy urodzili si w marcu

    SELECT Nazwisko, Imie, Pesel FROM UczniowieWHERE idklasy=1 EXCEPTSELECT Nazwisko, Imie, Pesel FROM UczniowieWHERE MONTH(DataUrodzenia)=3

    informatyka +

  • Co jeszcze potrafi??informatyka +*Zapytanie, ktre przygotuje list uczniw urodzonych w marcu, ktrych nazwisko zaczyna si na liter KSELECT Nazwisko, Imie, Pesel FROM UczniowieWHERE MONTH(DataUrodzenia)=3 INTERSECTSELECT Nazwisko, Imie, Pesel FROM UczniowieWHERE nazwisko LIKE K%

    informatyka +

  • Co jeszcze potrafi??informatyka +*Tabele przestawneSELECT * FROM(SELECT Przedmioty.Nazwa as Przedmiot, Klasy.Nazwa as Klasa, Oceny.OcenaFROM Klasy Join Uczniowie ON Klasy.idklasy=Uczniowie.idklasy Join Oceny ON Oceny.iducznia=Uczniowie.iducznia Join Przedmioty ON Przedmioty.idprzedmiotu=Oceny.idprzedmiotu ) as A PIVOT (AVG(Ocena) FOR Klasa in ([Ia],[IIa],[IIc])) as B

    informatyka +

  • Co jeszcze potrafi??informatyka +*Tabele przestawne

    informatyka +

  • PodsumowaniePrzedstawilimy podstawowe moliwoci jzyka SQL a w szczeglnoci polecenia SELECT

    Standard jzyka SQL cigle jest rozwijany i wzbogacany o nowe moliwoci

    informatyka +*

    informatyka +

  • informatyka +*Dzikuj za uwag a moe pytania ????

    informatyka +

  • Wykad wprowadza do tematyki baz danych. W ramach wykadu zaprezentowane zostanie wprowadzenie do relacyjnego modelu danych.Zdefiniowane zostan pojcia : dane, informacja, wiedza oraz baza danych. Pojcia podstawowe : tabela relacyjna, cechy tabeli relacyjnej, klucz podstawowy i klucz obcy.Przedstawione zostanie pojcie Systemu Zarzdzania Bazami Danych.Pokazane zostan anomalie zwizane z modyfikacj danych i sposoby ich rozwizywania.Omwione zostan przykady korzystania z baz danych.

    *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Historia relacyjnego modelu danych rozpocza si w roku 1970 wraz z publikacj E.F.Codda pt. A Relational Model of Data for Large Shared Data Banks. ( pol. Relacyjny model danych dla duych wspdzielonych bankw danych). Ten artyku wzbudzi due zainteresowanie, poniewa przedstawia moliwoci realizacji i praktyczne zastosowania komercyjnego systemu baz danych Praca ta stworzya teoretyczne podstawy budowania baz danych w oparciu o relacyjne podejcie do jej modelowania. Opublikowana teoria bardzo szybko zainteresowaa potencjalnych twrcw i producentw systemw zarzdzania bazami danych. Droga od teorii do praktyki bywa czsto duga i wyboista ale w tym przypadku, ze wzgldu na pilne potrzeby rynku, przebiegaa do szybko i sprawnie. Jednym z podstawowych wyzwa byo opracowanie sposobu komunikowania si i korzystania z relacyjnych baz danych, czyli opracowanie specjalnego jzyka programowania. W ramach prac nad jzykiem do obsugi baz danych, prowadzonych w firmie IBM, w roku 1974 powsta jzyk SEQUEL (ang. Structured English Query Language Stukturalny Angielski Jzyk Zapyta), ktry nastpnie zosta rozwinity i nazwany SQL (ang. Structured Query Language Strukturalny Jzyk Zapyta) zmiana nazwy wynikaa ze sporu prawnego o zastrzeon nazw SEQUEL. Pod koniec lat 70-tych XX wieku, firma ORACLE wypucia na rynek pierwszy komercyjny system zarzdzania bazami danych oparty o SQL. W latach 80-tych i 90tych, ubiegego wieku, trwa burzliwy rozwj baz danych opartych na modelu relacyjnym i jzyku SQL. *Poniewa wielu producentw zaczo tworzy rozwizania baz danych oparte o model relacyjny i jzyk SQL powstawao ryzyko, e u rnych producentw jzyk SQL bdzie rozwija si inaczej. Rozwizaniem tego problemu byo zdefiniowanie standardw jzyka SQL przez organizacj ISO (ang. International Organization for Standarization) i ANSI (ang. American National Standards Institute). Definiowanie standardu naley traktowa jako wytyczne dla producentw systemw, w jakim kierunku rozwija kolejne opracowania jzyka SQL, jakie nowe elementy mog zosta wprowadzone do jzyka i jak system baz danych powinien realizowa operacje zwizane z definiowaniem baz danych i ich eksploatacj. Obecnie jzyk SQL jest powszechnie stosowanym jzykiem komunikacji z bazami danych w systemach opartych o relacyjny model danych,. Krtka historia standardw jzyka SQL :1986: pierwszy standard SQL (SQL-86),1989: nastpny standard SQL (SQL-89),1992: kolejna, wzbogacona wersja standardu (SQL-92 lub SQL 2),1999: wdroenie nastpnej wersji standardu rozszerzonego o pewne cechy obiektowoci (SQL 3)2003: Kolejne rozszerzenie standardu (m.in. wczenie do standardu jzyka XML) SQL 4Jzyk SQL jest nadal rozwijany i trudno przewidzie, jakie kierunki rozwoju zostan wybrane, za odpowiedzi na to pytanie dostarcza bd kolejne wersje standardu.*Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *Na pocztku wykadu naley wprowadzi kilka podstawowych definicji. Rozpoczynamy od definicji danych jako znakw, teksw, liczb i ronych symboli, ktre zamierzamy przechowywa w celu pniejszego wykorzystania. Powyszy slajd ma uzasadnia tez, e zapisywanie danych bez pewnego okrelonego porzdku jest czynnoci bezcelow i w dalszej czci wykadu teza ta bdzie uzasadniania. *I na tej definicji powinnimy zakoczy wprowadzanie podstawowych poj i definicji. W przypadku okrelania spoeczestwa informacyjnego naley szczeglna uwag zwrci na fakt, e nowoczesne spoeczestwa i gospodarki opieraj si na informacji i wiedzy a take na umiejtnociach wykorzystania danych do pozyskiwania informacji i zdobywania wiedzy. Po wprowadzeniu podstawowych definicji przechodzimy do zagadnie zwizanych z podstawowym tematem wykadu czyli do baz danych a w szczeglnoci do baz danych opartych na modelu relacyjnym.*