Spis treści

KURS SQL
SQL komendy/funkcje
Windows Server 2008 R2
Baza NORTHWIND – ćwiczenia
Baza ADVENTUREWORKS 2008 R2 – ćwiczenia

KURS SQL
kurs sql wstęp Wstęp

kurs sql szczypta teorii. Szczypta teorii.

kurs sql SQL Server 2008 R2 (skąd pobrać) SQL Server 2008 R2 (skąd pobrać)

kurs sql SQL Server 2008 R2 Express (instalacja) SQL Server 2008 R2 Express (instalacja)

kurs sql Northwind – treningowa baza danych Northwind – treningowa baza danych

kurs sql Northwind – instalacja/dodanie bazy danych Northwind – instalacja/dodanie bazy danych

kurs sql Treningowa baza danych BANK_v2 (struktura) Treningowa baza danych BANK_v2 (struktura)

kurs sql Treningowa baza danych BANK_v2 (instalacja) Treningowa baza danych BANK_v2 (instalacja)

kurs sql Przygotowanie do tworzenia zapytań. Przygotowanie do tworzenia zapytań.

kurs sql Zadanie 1. Wyświetl dane wszystkich pracowników w banku (SELECT, FROM) Zadanie 1. Wyświetl dane wszystkich pracowników w banku (SELECT, FROM)

kurs sql Zadanie 2. Wyświetl informacje o wszystkich stanowiskach w banku (SELECT, FROM) Zadanie 2. Wyświetl informacje o wszystkich stanowiskach w banku (SELECT, FROM)

kurs sql Zadanie 3. Wyświetl informacje o wszystkich działach w banku (SELECT, FROM) Zadanie 3. Wyświetl informacje o wszystkich działach w banku (SELECT, FROM)

kurs sql Zadanie 4. Wyświetl imiona, nazwiska i pensję wszystkich pracowników (SELECT FROM) Zadanie 4. Wyświetl imiona, nazwiska i pensję wszystkich pracowników (SELECT FROM)

kurs sql Zadanie 5. Wyświetl imiona, nazwiska i całkowite wynagrodzenie (operacje arytmetyczne) Zadanie 5. Wyświetl imiona, nazwiska i całkowite wynagrodzenie (operacje arytmetyczne)

kurs sql korzystanie z aliasów. Zadanie 6. Korzystanie z aliasów.

kurs sql dodawanie komentarzy. Zadanie 7. Dodawanie komentarzy.

kurs sql round cast where order by Zadanie 8. Pokaż dniówkę, tygodniówkę, pensję miesięczną i roczną wszystkich pracowników.

kurs sql round cast where order by Zadanie 9. Pokaż wszystkich pracowników, których nazwiska zaczynają się na M. Wyświetl tylko Imię i Nazwisko pracownika.

kurs sql sql course sql where sql in sql or Zadanie 10. Pokaż wszystkich pracowników, którzy pracują w dziale logistyki lub informatyki. W wyniku wyświetl tylko imię i nazwisko pracownika.

kurs sql sql course sql where join is null Zadanie 11. Pokaż wszystkich pracowników których bezpośrednim przełożonym jest Leopold Banko. WHERE JOIN IS NULL.

SQL komendy/funkcje
sql aliasy SQL ALIASY
sql aliasy SQL ALTER TABLE
sql and SQL AND
sql between SQL BETWEEN
sql case SQL CASE
sql case
SQL CHECK
sql case SQL CONSTRAINTS
sql case SQL CREATE DATABASE
sql case SQL CREATE TABLE
sql case SQL CROSS JOIN
sql case SQL DELETE
sql case SQL DROP INDEX
sql case SQL EXCEPT
sql case SQL FOREIGN KEY
sql from SQL FROM
sql full outer join SQL FULL OUTER JOIN
sql in SQL GRANT
sql in SQL GROUP BY
sql in SQL HAVING
sql in SQL IN
sql in
 SQL IN z CASE
sql inner join
SQL INNER JOIN
sql inner join SQL INSERT INTO
sql inner join SQL INSERT INTO SELECT
sql inner join SQL INTERSECT
sql inner join SQL IS NOT NULL
sql joinSQL JOIN
sql left join
SQL LEFT JOIN
sql like
SQL LIKE
sql or
SQL OR
sql order by
SQL ORDER BY
sql right join
SQL RIGHT JOIN
sql select
SQL SELECT
sql select distinct
SQL SELECT DISTINCT
sql select top
SQL SELECT TOP
sql where
SQL WHERE
sql date SQL AVG()
sql date
SQL CAST()
sql date SQL CONVERT()
sql date SQL COUNT()
sql date SQL DATE()
sql date
SQL DATEDIFF()
sql getdate SQL GETDATE()
sql funkcja min SQL MIN()

Windows Server 2008 R2
strzalka instalacja

strzalka problemy przy instalacji

strzalka instalacja service pack 2

strzalka  uruchamianie środowiska

strzalka baza AdventureWorks

strzalka baza AdventureWorksDW

Zadania praktyczne
Baza NORTHWIND – ćwiczenia
strzalka zadanie 1.  Wyświetl wszystkich pracowników w formacie: Nazwisko, Imię, Stanowisko. [rozwiązanie]

strzalka zadanie 2. Wyświetl wszystkich pracowników w formacie: Nazwisko, Imię, Stanowisko, Kraj i nazwij tak nagłówki kolumn, ale tylko tych ze Stanów Zjednoczonych. [rozwiązanie]

northwind zadania praktyczne zadanie 3. Znajdź dane firmy o nazwie „Alfreds Futterkiste”  [rozwiązanie]

northwind zadania praktyczne zadanie 4. Znajdź dostawców czekolady. [rozwiązanie]

northwind zadania praktyczne zadanie 5. Raport sprzedaży za 1996 rok. [rozwiązanie]

northwind zadania praktyczne zadanie 6. Wyświetl liczbę pracowników. [rozwiązanie]

northwind zadania praktyczne zadanie 7. Wyświetl aktualną listę produktów. [rozwiązanie]

northwind zadania praktyczne northwind practical exercises zadanie 8. Pokaż wszystkich pracowników których nazwiska zaczynają się na literę D.[rozwiązanie]

Baza ADVENTUREWORKS 2008 R2 – ćwiczenia
strzalka zadanie 1. Pokaż 10-ciu pierwszych pracowników którzy mają na nazwisko „Anderson”. [rozwiązanie]

strzalka zadanie 32. Znajdź najświeższe i najstarsze zamówienie.
strzalka zadanie 33. Zaprezentuj zestawienie sprzedaży w latach (wg liczby zamówień)

Kurs SQL – polecenie SELECT

Jednym z podstawowych poleceń języka SQL jest polecenie SELECT. Dzięki niemu możemy „pobierać” z bazy danych dane których potrzebujemy. Żeby otrzymać jakieś informacje z bazy danych musimy określić dokładnie czego chcemy i „powiedzieć” to w takie sposób żeby nasz komputer to zrozumiał. Musimy więc określić czego chcemy? skąd chcemy to pobrać i określić ewentualne warunki dla naszego zapytania.

W ramach tego kursu, jako bazę treningową, będziemy wykorzystywać bazę Nortwind (do pobrania tutaj).

 


Zadanie 1

Pokaż wszystkich pracowników z bazy Northwind.

Rozwiązanie:

Tak jak pisałem wcześniej musimy określić kilka rzeczy:

  1. czego chcemy, w tym przypadku bardziej co chcemy wyświetlić?
  2. skąd chcemy to pobrać?
  3. oraz określić warunki brzegowe.

OK to określmy

Ad.1. Co chcemy wyświetlić ?

W tym zadaniu chcemy wyświetlić listę pracowników. Do tego potrzebne nam będzie polecenie SELECT od którego zaczniemy nasze zapytanie. W naszym zadaniu nie ma słowa o tym jakie dane na temat pracowników należy wyświetlić więc wyświetlimy wszystkie jakie znajdują się w bazie. Początek naszego zapytania przybierze więc postać:

SELECT *

znak „*” oznacza wszystkie pola z danego rekordu (wszystkie pola opisujące jednego pracownika).

Ad.2. Skąd chcemy to pobrać ?

Dane pracowników w bazie Northwind przechowywane są w tabeli o nazwie „Employees” więc do takiej tabeli się odwołamy. Do tego potrzebne będzie nam polecenie FROM więc ta część zapytania przybierze postać:

FROM employees

Ad.3. Określić warunki brzegowe.

W tym zadanie nie ma żadnych warunków brzegowych więc ta część pozostanie pusta.

Złóżmy więc wszystko w całość i nasze zapytanie przybierze postać:

Kurs SQL. Polecenie SELECT. Zadanie 1. Widok zapytania.
Kurs SQL. Polecenie SELECT. Zadanie 1. Widok zapytania.

Wynik:

Wynikiem uruchomienia naszego zapytania jest znalezienie 9 rekordów w bazie Northwind.

Kurs SQL. Polecenie SELECT. Zadanie 1. Wynik zapytania.
Kurs SQL. Polecenie SELECT. Zadanie 1. Wynik zapytania.

Tak oto rozwiązaliśmy nasze pierwsze zadanie i napisaliśmy pierwsze zapytanie SQL.

W ramach ćwiczeń z poleceniem SELECT przećwiczmy jeszcze dwa zadania

 


Zadanie 2

Wyświetl wszystkie kategorie z bazy Northwind ale tylko: identyfikator kategorii, nazwę kategorii i opis kategorii.

Rozwiązanie:

  1. Co chcemy wyświetlić?
  2. skąd chcemy to pobrać, gdzie to się znajduje?
  3. oraz określić warunki brzegowe.

zaczynamy

Przydatne linki: schemat bazy Northwind, instalacja SQL Server 2008 R2

Ad.1. Co chcemy wyświetlić ?

Chcemy wyświetlić wszystkie kategorie ale tylko kolumny ID czyli identyfikator, nazwę  i opis kategorii, więc nasze zapytanie rozpoczniemy od polecenia

SELECT CategoryID, CategoryName, Description

Ad.2 gdzie to się znajduje ?

Informację o kategoriach znajdują się w tabeli Categories więc nasz klauzula FROM będzie wyglądała następująco

FROM Categories

Ad.3 warunki brzegowe?

Brak 🙂

Składając wszystko w całość uzyskujemy coś takiego

Kurs SQL. Polecenie SELECT. Zadanie 2.
Kurs SQL. Polecenie SELECT. Zadanie 2.

Wynikiem uruchomienia zapytania jest wyświetlenie 8 rekordów co prezentuje obrazek poniżej.

Kurs SQL. Polecenie SELECT. Zadanie 2.
Kurs SQL. Polecenie SELECT. Zadanie 2.

 

Ćwiczenie to podstawa więc na zakończenie zrobimy jeszcze jedno zadanie

 


Zadanie 3

Wyświetl wszystkie produkty z bazy Northwind, ale tylko pola: nazwę produktu, ilość na jednostkę oraz cenę jednostkową.

Rozwiązanie:

  1. Co chcemy wyświetlić?
  2. skąd chcemy to pobrać, gdzie to się znajduje?
  3. oraz określić warunki brzegowe.

zaczynamy

Przydatne linki: schemat bazy Northwind, instalacja SQL Server 2008 R2

Ad.1. Co chcemy wyświetlić ?

Produkty znajdujące się w tabeli Products ale my mamy wyświetlić tylko niektóre kolumny: nazwę produktu, ilość na jednostkę oraz cenę jednostkową. Nasze zapytanie będzie miało postać.

SELECT ProductName, QuantityPerUnit, UnitPrice

Ad.2 gdzie to się znajduje?

Informację których szukamy znajdują się w tabeli Products, więc

FROM Products

AD.3 warunków brzegowych brak

składamy całość i otrzymujemy

Kurs SQL. Polecenie SELECT. Zadanie 3.
Kurs SQL. Polecenie SELECT. Zadanie 3.

a wynik naszego zapytania wskaże nam 77 rekordów, rysunek poniżej

Kurs SQL. Polecenie SELECT. Zadanie 3.
Kurs SQL. Polecenie SELECT. Zadanie 3.

 

 

Kurs SQL. Szczypta teorii.

Bardzo lubię konkretne a szczególnie praktyczne informacje ale niekiedy przychodzi czas na garść teorii. Niemniej postaram się podać Wam kilka informacji w pigułce.

SQL (ang. Structured Query Language) to język zapytań za pomocą którego możemy komunikować się z bazą danych. Możemy tworzyć różne obiekty np. bazy danych, tabele, widoki itp. ale również wprowadzać i edytować dane w bazie danych. Cała ta komunikacja odbywa się za pomocą poleceń, które poznacie w trakcie tego kursu.

 

DML (ang. Data Manipulation Language) jest to język manipulacji danych. Służy do wykonywania operacji na danych za pomocą poleceń: SELECT, INSERT, UPDATE, DELETE. W praktyce sprowadza się to do tego że za pomoca ww. poleceń „zarządzamy” danymi w bazie danych. Za pomocą polecenia SELECT „wyciągamy” dane z bazy, za pomocą INSERT „wrzucamy” dane do bazy, korzystając z polecenia UPDATE możemy zmodyfikować dane w bazie oraz za pomocą DELETE usuwamy dane z bazy.

DDL (ang. Data Definition Language) to język którego możemy definiować strukturę danych. Wykorzystujemy tutaj takie polecenia jak np.: CREATE DATABASE (jak sama nazwa wskazuje służy do tworzenia bazy danych), CREATE TABLE, ALTER TABLE, DROP TABLE (służą do zarządzania tabelami), CREATE VIEW, ALTER VIEW, DROP VIEW (służą do zarządzania widokami).

SZBD (ang. Database Management System , DBMS) to system zarządzania bazą danych. Najbardziej znane systemy do zarządzania bazami to: SQL Server, Oracle, DB2, Informix, MySQL. W dużym uproszczeniu to rozbudowana aplikacja za pomocą której komunikujesz się ze swoją bazą danych.

Baza Danych to nic innego jak zbiór danych poukładanych w określony sposób, wg. określonych reguł.

Tabel to wydzielony logicznie zbiór danych/informacji. Dane zapisane są w polach, które składają się na wiersze a te dzielone są na kolumny.

Wiersz/rekord to zestaw danych stanowiący pewną całość z reguły będący częścią większej całości (np. tabeli).

Kolumna to „składowa” tabeli. Kolumna jest z reguły atrybutem pewnego obiektu np. Tabela „pracownicy” zawierająca dane o pracownikach firmy w wierszach/rekordach będzie przechowywała dane na temat jednego pracownika a więc jego imię, nazwisko, datę urodzenia itd. Natomiast imiona, nazwiska, daty urodzenia wszystkich pracowników będą stanowiły kolumny tabeli „pracownicy”.

Klucz główny to jednoznaczny identyfikator wierszy w tabeli. Chodzi o to żeby każdy wiersz w tabeli miał jakąś unikalną wartość w skali jednej tabeli w celu jednoznacznej identyfikacji (dzięki temu możemy później jakoś się do niego odwołać, znaleźć go w gąszczu). Np. weźmy tabelę „książki” która zawiera dane o wszystkich pozycjach w księgarni. Prawie wszystkie dane mogą się powtarzać np. może być wiele książek o tym samym tytule, wiele książek może mieć tego samego autora itd. W celu jednoznacznej identyfikacji książki posiadają unikatowy numer ISBN który może spełniać rolę klucza głównego, czyli nie ma takiej możliwości aby dwie lub więcej książek posiadały ten sam numer ISBN.

Klucz obcy to najczęściej reprezentacja klucza głównego jednej tabeli w innej tabeli. Trochę zamieszałem więc posłużę się przykładem. Mamy dwie tabele „pracownicy (która posiada m.in. pola: ID, Imię, Nazwisko, Miasto_ID, itd) ” i „miasta (która posiada pola: Miasto_ID, Nazwa, KodPocztowy)”. Pole „Pracownicy.Miasto_ID” jest kluczem obcym w tabeli „Pracownicy”. W polu tym jest tylko wskaźnik na konkretny wiersz/rekord w tabeli „Miasta” gdzie zapisane są pełne dane miasta w którym mieszka dany pracownik. Na chwilę obecna nie wiem jak łatwiej to wytłumaczyć 🙂

Więzy integralności to zbiór zasad „nałożonych” na tabele dzięki którym nie można modyfikować danych w tabelach w taki sposób aby straciły spójność.

Relacje mówiąc w uproszczeniu to połączenie między tabelami. Pola w jednej tabeli przechowują wskaźniki na rekordy w drugiej tabeli. Nie chcę tutaj zanudzać ale istnieje kilka typów relacji, co będzie omówione w kolejnych wpisach.

Typy danych to opis rodzaju, struktury i zakresu wartości jakie mogą przyjmować pola w odpowiednich kolumnach w tabeli.

poprzedni | następny