Ćwiczenie 7 – Raport zamówień (SQL)

Polecenie

Firma chce przygotować raport pokazujący listę klientów i ich zamówienia.

SQL – tworzenie tabel

CREATE DATABASE firma;
USE firma;

CREATE TABLE klienci (
    id INT AUTO_INCREMENT PRIMARY KEY,
    imie VARCHAR(50) NOT NULL,
    nazwisko VARCHAR(50) NOT NULL
);

CREATE TABLE zamowienia (
    id INT AUTO_INCREMENT PRIMARY KEY,
    klient_id INT NOT NULL,
    produkt VARCHAR(100) NOT NULL,
    cena DECIMAL(10,2) NOT NULL,
    FOREIGN KEY (klient_id) REFERENCES klienci(id)
);
            

SQL – przykładowe dane

INSERT INTO klienci (imie, nazwisko) VALUES
('Jan', 'Kowalski'),
('Anna', 'Nowak'),
('Piotr', 'Wiśniewski');

INSERT INTO zamowienia (klient_id, produkt, cena) VALUES
(1, 'Laptop', 3500.00),
(1, 'Mysz', 50.00),
(2, 'Telefon', 2000.00),
(3, 'Monitor', 900.00);
            

SQL – zapytanie JOIN

SELECT klienci.imie, klienci.nazwisko, zamowienia.produkt, zamowienia.cena
FROM klienci
JOIN zamowienia ON klienci.id = zamowienia.klient_id;
            

Efekt końcowy

Zapytanie powinno zwrócić listę klientów wraz z nazwami produktów i cenami ich zamówień, np.:

Jan Kowalski   | Laptop  | 3500.00
Jan Kowalski   | Mysz    |   50.00
Anna Nowak     | Telefon | 2000.00
Piotr Wiśniewski | Monitor | 900.00