Kontynuacja lekcji poprzedniej.
Tworzenie nowych tabel
-- Tabela: pracownicy
CREATE TABLE pracownicy (
id INT AUTO_INCREMENT PRIMARY KEY,
imie VARCHAR(50) NOT NULL,
nazwisko VARCHAR(50) NOT NULL,
dzial VARCHAR(50),
pensja DECIMAL(10, 2)
);
-- Tabela: projekty
CREATE TABLE projekty (
id INT AUTO_INCREMENT PRIMARY KEY,
nazwa VARCHAR(50) NOT NULL,
budzet DECIMAL(12, 2),
kierownik_id INT,
FOREIGN KEY (kierownik_id) REFERENCES pracownicy(id)
);
-- Tabela: zadania
CREATE TABLE zadania (
id INT AUTO_INCREMENT PRIMARY KEY,
nazwa VARCHAR(100) NOT NULL,
projekt_id INT,
pracownik_id INT,
status VARCHAR(20),
FOREIGN KEY (projekt_id) REFERENCES projekty(id),
FOREIGN KEY (pracownik_id) REFERENCES pracownicy(id)
);
Wstawianie danych
-- Dane do tabeli: pracownicy
INSERT INTO pracownicy (imie, nazwisko, dzial, pensja) VALUES
('Jan', 'Kowalski', 'IT', 6000.00),
('Anna', 'Nowak', 'Marketing', 4500.00),
('Piotr', 'Wiśniewski', 'IT', 7000.00),
('Katarzyna', 'Zielinska', 'Sprzedaż', 5000.00),
('Marek', 'Jankowski', 'IT', 5500.00);
-- Dane do tabeli: projekty
INSERT INTO projekty (nazwa, budzet, kierownik_id) VALUES
('Projekt A', 100000.00, 1),
('Projekt B', 200000.00, 3),
('Projekt C', 150000.00, 4);
-- Dane do tabeli: zadania
INSERT INTO zadania (nazwa, projekt_id, pracownik_id, status) VALUES
('Analiza wymagań', 1, 1, 'Zakończone'),
('Projektowanie', 1, 3, 'W trakcie'),
('Testowanie', 1, 5, 'Oczekujące'),
('Kampania reklamowa', 2, 2, 'W trakcie'),
('Prezentacja wyników', 2, 4, 'Oczekujące'),
('Dokumentacja', 3, 5, 'Zakończone');
Ćwiczenia z widokami i SELECT
Ćwiczenie 1: Widok pracowników z działu IT
Utwórz widok o nazwie pracownicy_it
, który zawiera dane o pracownikach z działu IT (imiona, nazwiska, pensje). Następnie wyświetl dane z tego widoku.
Ćwiczenie 2: Widok podsumowujący projekty
Utwórz widok projekty_podsumowanie
, który wyświetla nazwy projektów, budżet oraz imię i nazwisko kierownika projektu.
Ćwiczenie 3: Widok zadań oczekujących
Stwórz widok o nazwie zadania_oczekujace
, który pokazuje nazwę zadania, nazwę projektu, oraz status dla zadań o statusie „Oczekujące”.
Ćwiczenie 4: Widok średnich pensji w działach
Utwórz widok srednie_pensje
, który pokazuje średnią pensję w każdym dziale.
Ćwiczenie 5: Widok szczegółowy zadań z pracownikami
Stwórz widok zadania_szczegoly
, który zawiera nazwę zadania, nazwę projektu, imię i nazwisko pracownika realizującego zadanie oraz status zadania.
Ćwiczenie 6: Widok projektów z dużym budżetem
Utwórz widok projekty_duzy_budzet
, który zawiera dane o projektach z budżetem większym niż 150,000.