Sql Marcin Szeliga
-
Upload
nexik -
Category
Technology
-
view
1.370 -
download
2
description
Transcript of Sql Marcin Szeliga
SQL Tips & TricksSQL Tips & TricksSQL Tips & TricksSQL Tips & TricksUPDATE dbo.SequenceUPDATE dbo.SequenceSET @invoiceid = val = val + 1SET @invoiceid = val = val + 1OUTPUT inserted.val, @custid, @invdate, @amtOUTPUT inserted.val, @custid, @invdate, @amtINTO dbo.InvoicesINTO dbo.Invoices
MarcinSzeliga:Bio.ToString()MarcinSzeliga:Bio.ToString() Nauczyciel i wykładowcaNauczyciel i wykładowca
www.abramowski.edu.plwww.abramowski.edu.pl www.wit.edu.plwww.wit.edu.pl
Trener i konsultantTrener i konsultant www.betacom.com.plwww.betacom.com.pl
Autor książek i artykułówAutor książek i artykułów www.helion.plwww.helion.pl www.wip.pl , http://www.microsoft.com/poland/technet/articlewww.wip.pl , http://www.microsoft.com/poland/technet/article
Opiekun działu SQL ServerOpiekun działu SQL Server www.wss.plwww.wss.pl
Microsoft Most Valuable Professional Microsoft Most Valuable Professional mvp.support.microsoft.com mvp.support.microsoft.com
Specjalista MicrosoftSpecjalista Microsoft Microsoft Certified IT Professional (Database Admin + Dev + BI)Microsoft Certified IT Professional (Database Admin + Dev + BI) Microsoft Certified Systems Engineer: SecurityMicrosoft Certified Systems Engineer: Security (Win 2000 + 2003) (Win 2000 + 2003) Microsoft Certified Solution Developer (For Microsoft .NET + VS 6.0)Microsoft Certified Solution Developer (For Microsoft .NET + VS 6.0) Microsoft Certified Systems Engineer (Win NT 4.0)Microsoft Certified Systems Engineer (Win NT 4.0)
Tabele jako zbiory danychTabele jako zbiory danych
Liczba kolumn tabeli jest stałaLiczba kolumn tabeli jest stała
W poszczególnych kolumnach znajdują W poszczególnych kolumnach znajdują się zawsze dane tego samego typu się zawsze dane tego samego typu
Nazwy kolumn tej samej tabeli muszą być Nazwy kolumn tej samej tabeli muszą być niepowtarzalneniepowtarzalne
Zbiory nie zawierają kilku kopii tego Zbiory nie zawierają kilku kopii tego samego elementu samego elementu w tabeli może w tabeli może wielokrotnie powtórzyć się ten sam wiersz wielokrotnie powtórzyć się ten sam wiersz stosuje się identyfikatory wierszy stosuje się identyfikatory wierszy (klucze podstawowe)(klucze podstawowe)
Tabele jako zbiory danychTabele jako zbiory danych
Kolejność kolumn jest bez znaczenia Kolejność kolumn jest bez znaczenia Kolejność kolumn wyniku zapytania definiuje Kolejność kolumn wyniku zapytania definiuje się w klauzuli SELECTsię w klauzuli SELECT
Kolejność wierszy jest bez znaczenia Kolejność wierszy jest bez znaczenia Kolejność kolumn wyniku zapytania definiuje Kolejność kolumn wyniku zapytania definiuje się w klauzuli ORDER BY (się w klauzuli ORDER BY (DEMODEMO))
Trzy modele baz danych: Trzy modele baz danych: Relacyjny (postulaty Codda)Relacyjny (postulaty Codda)
Obiektowy (niesprawdzony)Obiektowy (niesprawdzony)
Jednorodny (duplikaty, szybki i łatwy odczyt)Jednorodny (duplikaty, szybki i łatwy odczyt)
101 języka SQL101 języka SQLPrzetwarzanie zbiorów a nie pojedynczych Przetwarzanie zbiorów a nie pojedynczych danychdanych
DeklaratywnośćDeklaratywność
Interpretowanie a nie kompilowanie instrukcjiInterpretowanie a nie kompilowanie instrukcji
Wartość NULL i logika trójwartościowa Wartość NULL i logika trójwartościowa ((DEMODEMO))
Standardy ANSIStandardy ANSI
SQL1 (1986)SQL1 (1986)
SQL2 (1992)SQL2 (1992)
SQL3 (1993)SQL3 (1993)
SQL3+ (2003)SQL3+ (2003)
101 języka SQL101 języka SQL
FROM (źródło danych)
Kolejność wykonywania klauzul instrukcji Kolejność wykonywania klauzul instrukcji SELECT:SELECT:
101 języka SQL101 języka SQL
FROM (źródło danych)WHERE (warunek logiczny)
Kolejność wykonywania klauzul instrukcji Kolejność wykonywania klauzul instrukcji SELECT:SELECT:
101 języka SQL101 języka SQL
FROM (źródło danych)WHERE (warunek logiczny)GROUP BY (wyrażenie grupujące)
Kolejność wykonywania klauzul instrukcji Kolejność wykonywania klauzul instrukcji SELECT:SELECT:
101 języka SQL101 języka SQL
FROM (źródło danych)WHERE (warunek logiczny)GROUP BY (wyrażenie grupujące)HAVING (warunek logiczny)
Kolejność wykonywania klauzul instrukcji Kolejność wykonywania klauzul instrukcji SELECT:SELECT:
101 języka SQL101 języka SQL
SELECT (lista kolumn, wyrażeń)FROM (źródło danych)WHERE (warunek logiczny)GROUP BY (wyrażenie grupujące)HAVING (warunek logiczny)
Kolejność wykonywania klauzul instrukcji Kolejność wykonywania klauzul instrukcji SELECT:SELECT:
101 języka SQL101 języka SQL
SELECT (lista kolumn, wyrażeń)FROM (źródło danych)WHERE (warunek logiczny)GROUP BY (wyrażenie grupujące)HAVING (warunek logiczny)ORDER BY (lista kolumn, wyrażeń)
Kolejność wykonywania klauzul instrukcji Kolejność wykonywania klauzul instrukcji SELECT:SELECT:
101 języka SQL101 języka SQL
SELECT TOP(lista kolumn, wyrażeń)FROM (źródło danych)WHERE (warunek logiczny)GROUP BY (wyrażenie grupujące)HAVING (warunek logiczny)ORDER BY (lista kolumn, wyrażeń)
Kolejność wykonywania klauzul instrukcji Kolejność wykonywania klauzul instrukcji SELECT (SELECT (DEMODEMO):):
101 pobierania danych101 pobierania danych
Dane mogą być odczytane:Dane mogą być odczytane:z tabelz tabel
Z indeksówZ indeksów
Do odczytania obiekt może być:Do odczytania obiekt może być:ZeskanowanyZeskanowany
PrzeszukanyPrzeszukany
Argumenty SARG (Argumenty SARG (DEMODEMO))
Selektywność zapytańSelektywność zapytań
Grupowanie wierszyGrupowanie wierszy
Funkcje grupujące (w serwerze SQL jest Funkcje grupujące (w serwerze SQL jest ich tylko 11, w serwerze Oracle prawie ich tylko 11, w serwerze Oracle prawie 200)200)
Grupy i podgrupyGrupy i podgrupy
Operator GROUPING SETSOperator GROUPING SETS
Klauzula OVER i partycje Klauzula OVER i partycje
Funkcje rankingu (Funkcje rankingu (DEMODEMO))
PodzapytaniaPodzapytania
Podzapytania jako zmiennePodzapytania jako zmienne
Podzapytania jako źródła danychPodzapytania jako źródła danychTabele pochodneTabele pochodne
CTECTE
Wyznaczanie trendów (Wyznaczanie trendów (DEMODEMO))
SQL Tips & TricksSQL Tips & Tricks
Tabele to zbiory danychTabele to zbiory danych
Serwery relacyjnych baz danych wydajnie Serwery relacyjnych baz danych wydajnie przetwarzają duże zbiory danychprzetwarzają duże zbiory danych
Język SQL nie został stworzony z myślą o Język SQL nie został stworzony z myślą o odczytywaniu i modyfikowaniu danych odczytywaniu i modyfikowaniu danych skalarnychskalarnych
Pytania ?Pytania ?
[email protected]@wss.pl