2016.01. zad.1 PRZYKŁADY KWEREND ================================ Exercise 1 - Wyświetlenie tabel -------------------------------- SELECT * FROM `autorzy` WHERE 1; SELECT * FROM `egzemplarze` WHERE 1; SELECT * FROM `ksiazki` WHERE 1; Exercise 2 - Wyświetlenie dowolnej/dowolnych kolumny z tabeli -------------------------------- SELECT `IDKsiazki` FROM `ksiazki` WHERE 1; SELECT `Tytul` FROM `ksiazki` WHERE 1; SELECT `IDKsiazki`, `AutorID` FROM `ksiazki` WHERE 1; SELECT `Wydawnictwo`,`RokWydania` FROM `ksiazki` WHERE 1; Exercise 3 - Wyświetlenie dowolnej/dowolnych kolumny z tabeli jeżeli jest spełniony warunek -------------------------------- SELECT `Wydawnictwo`,`RokWydania` FROM `ksiazki` WHERE `AutorID`=1; SELECT `Wydawnictwo`,`RokWydania` FROM `ksiazki` WHERE `AutorID`=2; SELECT `Wydawnictwo`,`RokWydania` FROM `ksiazki` WHERE `Wydawnictwo`='Ossolineum'; SELECT `Tytul`,`RokWydania` FROM `ksiazki` WHERE `Wydawnictwo`='Ossolineum'; Exercise 4 - Wyświetlenie dowolnej/dowolnych kolumny z tabeli zmieniając jej nazwę -------------------------------- SELECT `IDKsiazki` AS `identyfikator_ksiazki` FROM `ksiazki` WHERE 1; SELECT `Tytul` AS `Najwazniejszy_tytul` FROM `ksiazki` WHERE 1; SELECT `IDKsiazki` AS `identyfikator`, `AutorID` AS `Tworca_ksiazki` FROM `ksiazki` WHERE 1; SELECT * FROM `ksiazki` ORDER BY `RokWydania`; Exercise 5a - Sortowanie tabel (ORDER BY, ASC, DESC) - alfabetyczny tutuł -------------------------------- SELECT `Wydawnictwo` FROM `ksiazki` ORDER BY `Wydawnictwo`; SELECT `Wydawnictwo`, `RokWydania` FROM `ksiazki` ORDER BY `Wydawnictwo`; SELECT `Wydawnictwo`, `RokWydania` FROM `ksiazki` ORDER BY `RokWydania`; SELECT * FROM `ksiazki` ORDER BY `Tytul`; SELECT * FROM `ksiazki` ORDER BY `Tytul` ASC; Exercise 5b - Sortowanie tabel - malejąco -------------------------------- SELECT `Wydawnictwo` FROM `ksiazki` ORDER BY `Wydawnictwo` DESC; SELECT `Wydawnictwo` AS `Wyd.`, `RokWydania` FROM `ksiazki` ORDER BY `Wydawnictwo` DESC; SELECT `Wydawnictwo`, `RokWydania` FROM `ksiazki` ORDER BY `RokWydania` DESC; SELECT * FROM `ksiazki` ORDER BY `Tytul` DESC; Exercise 6 - Sortowanie kolumn minium 2 - koleność sortowania -------------------------------- SELECT `Wydawnictwo`, `RokWydania` FROM `ksiazki` ORDER BY `Wydawnictwo`, `RokWydania` DESC; SELECT `Wydawnictwo`, `RokWydania` FROM `ksiazki` ORDER BY `RokWydania`, `Wydawnictwo` DESC; Exercise 7 - Warunkowe wyświetlanych danych z tabel -------------------------------- SELECT `Wydawnictwo`,`RokWydania` FROM `ksiazki` WHERE `RokWydania` > 2009; SELECT `Wydawnictwo`,`RokWydania` FROM `ksiazki` WHERE `AutorID` > 1; Exercise 8 - Suma Np.: suma lat wszystkich roczników książek, suma warunkowa -------------------------------- SELECT SUM(RokWydania) FROM `ksiazki`; SELECT SUM(RokWydania) FROM `ksiazki` WHERE `RokWydania` > 2010; Exercise 9 - Zliczanie ilości wystąpień -------------------------------- SELECT COUNT(*) FROM `ksiazki` WHERE `RokWydania` > 2010; SELECT COUNT(*) FROM `ksiazki` WHERE `AutorID` = 2; Exercise 10 - Grupa wystąpień -------------------------------- SELECT AVG (`RokWydania`) FROM `ksiazki` WHERE `RokWydania` > 2010; SELECT AVG (`RokWydania`) FROM `ksiazki` GROUP BY `RokWydania`; SELECT AVG (`Wydawnictwo`) FROM `ksiazki` GROUP BY `RokWydania`; SELECT AVG (`AutorID`) FROM `ksiazki` GROUP BY `RokWydania`; Exercise 11 - minimum -------------------------------- SELECT MIN(`RokWydania`) FROM `ksiazki`; SELECT MIN(`RokWydania`) FROM `ksiazki` WHERE `AutorID`= 2; Exercise 12 - maximum -------------------------------- SELECT MAX(`RokWydania`) FROM `ksiazki`; SELECT MAX(`RokWydania`) FROM `ksiazki` WHERE `AutorID`= 2; Exercise 13 - Łączenie tabel -------------------------------- SELECT * FROM `ksiazki` INNER JOIN `autorzy` ON `ksiazki`.`AutorID`=`autorzy`.`IDAutor`; SELECT * FROM `autorzy` INNER JOIN `ksiazki` ON `ksiazki`.`AutorID`=`autorzy`.`IDAutor`; SELECT autorzy.Imie , autorzy.Nazwisko , ksiazki.Tytul FROM `autorzy` INNER JOIN `ksiazki` ON `ksiazki`.`AutorID`=`autorzy`.`IDAutor`; Exercise 14 - Łączenie tabel - wyswietlanie warunku -------------------------------- SELECT * FROM `ksiazki` INNER JOIN `autorzy` ON `ksiazki`.`AutorID`=`autorzy`.`IDAutor` WHERE ksiazki.AutorID = 2; SELECT autorzy.Imie , autorzy.Nazwisko , ksiazki.Tytul FROM `autorzy` INNER JOIN `ksiazki` ON `ksiazki`.`AutorID`=`autorzy`.`IDAutor` WHERE `ksiazki`.`RokWydania` > 2008; SELECT autorzy.Imie , autorzy.Nazwisko , ksiazki.Tytul , ksiazki.RokWydania FROM `autorzy` INNER JOIN `ksiazki` ON `ksiazki`.`AutorID`=`autorzy`.`IDAutor` WHERE `ksiazki`.`RokWydania` > 2008; Exercise 15 - Dodawanie/Usuwanie użytkownika do bazy danych i obsługa -------------------------------- CREATE USER 'uczen'@'localhost' IDENTIFIED BY 'haslo'; //dodanie SELECT CURRENT_USER; //sprawdzenie zalogowanych użytkowników GRANT ALL PRIVILEGES ON bibloteka.* TO 'uczen'@'localhost'; //nadanie wszystkich uprawnień GRANT CREATE,INSERT,DELETE,UPDATE,SELECT ON bibloteka.* TO 'uczen'@'localhost'; //nadanie uprawnień REVOKE ALL PRIVILEGES FROM bibloteka.* TO 'uczen'@'localhost'; //usuwanie wszystkich uprawnień REVOKE CREATE,INSERT,DELETE,UPDATE,SELECT FROM bibloteka.* TO 'uczen'@'localhost'; //usuwanie uprawnień DROP USER uczen@localhost; //usuwanie użytkownika CREATE USER 'uczen'@'localhost' IDENTIFIED BY 'haslo'; //dodanie Exercise 16 - Dodawanie tabeli do bazy danych oraz kolumn do tabeli -------------------------------- CREATE TABLE nazwaTabeli (id_tabeli int NOT NULL AUTO_INCREMENT, imie varchar(20), nazwisko varchar(25), wiek int(3), PRIMARY KEY(id_tabeli)); //tworzy tabele INSERT INTO nazwaTabeli (imie, nazwisko, wiek) VALUES ('Krzysztof', 'Czyz', 99); //dodanie rokordu ALTER TABLE nazwaTabeli ADD nazwaKolumny typKolumny(dlugosc); //dodawanie kolumny do tabeli ALTER TABLE nazwaTabeli ADD nazwaKolumny typKolumny(dlugosc) AFTER `kkkk`; //dodawanie kolumny do tabeli po kolumnie o nazwie `kkkk` ALTER TABLE nazwaTabeli DROP COLUMN nazwaKolumny; //usuwanie kolumny ========================================================================= WYKONAJ SPRAWOZDANIE - Wnioski do punktów