Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CREATE TABLE klienci(NIP VARCHAR(13) NOT NULL PRIMARY KEY, adres VARCHAR(100) NOT NULL, kod VARCHAR(8) NOT NULL, miasto VARCHAR(30) NOT NULL, telefon VARCHAR(15) NOT NULL);
- INSERT INTO klienci VALUES
- ('100-214-42-50', 'ul. BieĹźanowska 181', '30-856', 'ĹukĂłw', '(68)794-88-64'),
- ('100-623-59-22', 'ul. KrakusĂłw 1A/43', '51-424', 'SĹupsk ', '89 1234567'),
- ('101-294-43-23', 'ul. ToruĹska 14/2A', '76-128', 'PiĹa ', '(90)939-97-93');
- CREATE TABLE faktury (NrFaktury VARCHAR(8) NOT NULL PRIMARY KEY, DataFaktury DATE, NIP VARCHAR(20), SposobPlatnosci VARCHAR(10), FOREIGN KEY(NIP) REFERENCES kliencimd(NIP));
- INSERT INTO klienci VALUES
- ('F1/2003', '2003-01-01', '558-73-64-209', 'gotowka'),
- ('F1/2004', '2004-01-02', '474-629-76-54', 'przelew'),
- ('F1/2006', '2006-01-01', '145-79-24-386', 'przelew');
- CREATE TABLE szczegoly(IdTowaru INT(5) NOT NULL AUTO_INCREMENT PRIMARY KEY, NrFaktury VARCHAR(8) NOT NULL, ilosc INT(5), cena DECIMAL(7,2), FOREIGN KEY(NrFaktury) REFERENCES faktury(NrFaktury));
- INSERT INTO szczegoly VALUES
- ('F1/2003', 47, 2, 209.02),
- ('F1/2003', 99, 2, 340.10),
- ('F1/2004', 91, 3, 453.90);
- CREATE TABLE towary(IdTowaru INT(5) NOT NULL AUTO_INCREMENT, KodTowaru VARCHAR(8), nazwaTowaru VARCHAR(300),
- jednostka VARCHAR(5), iloscwOpakowaniu INT(5), VAT DECIMAL(5,2), stanMagazynu INT(5) FOREIGN KEY(IdTowaru) REFERENCES szczegoly(IdTowaru));
- 4.
- a)
- CREATE VIEW a AS SELECT kliencipd.NIP, kliencipd.adres, kliencipd.kod, kliencipd.miasto, kliencipd.telefon,
- fakturypd.NrFaktury, fakturypd.dataFaktury, fakturypd.SposobPlatnosci FROM kliencipd, fakturypd WHERE
- kliencipd.NIP=fakturypd.NIP AND YEAR(dataFaktury)>='2003' AND YEAR(dataFaktury)<='2006';
- b)
- CREATE VIEW b AS SELECT DISTINCT klienci.NIP, faktury.NrFaktury, towary.IdTowaru, towary.nazwaTowaru FROM
- klienci, towary,faktury, szczegoly WHERE klienci.NIP=faktury.NIP AND faktury.NrFaktury=szczegoly.NrFaktury AND
- szczegoly.IdTowaru=towary.IdTowaru AND towary.nazwatowaru LIKE "%386%";
- c)
- CREATE VIEW c AS SELECT YEAR(faktury.dataFaktury), AVG(szczegoly.cena) FROM faktury, szczegoly
- WHERE faktury.NrFaktury=szczegoly.NrFaktury GROUP BY YEAR(faktury.dataFaktury);
- d)
- CREATE VIEW d AS SELECT klienci.adres, klienci.kod, klienci.miasto, klienci.telefon, COUNT(fakturypd.NrFaktury) AS liczba_faktur FROM klienci INNER JOIN
- faktury ON klienci.NIP=faktury.NIP WHERE COUNT(faktury.NrFaktury)>1 AND YEAR(faktury.dataFaktury)=2004 group by adres; NIE DZIALA
- 5.
- a) UPDATE szczegoly SET cena=cena-0.12*cena WHERE cena>500;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement