Jak wida ć na powyższym przykładzie, grupy warunków umieszcza si ę w nawiasach.

Podobne dokumenty
1. Tworzenie tabeli. 2. Umieszczanie danych w tabeli

Połączenie z bazą danych : mysql h u root -p Enter password: *******

Wykład 5. SQL praca z tabelami 2

Laboratorium nr 4. Temat: SQL część II. Polecenia DML

Kurs. Podstawy MySQL

Programowanie MSQL. show databases; - pokazanie jakie bazy danych są dostępne na koncie

Instytut Mechaniki i Inżynierii Obliczeniowej Wydział Mechaniczny Technologiczny Politechnika Śląska

Bazy danych. Polecenia SQL

SQL (ang. Structured Query Language)

mysql> UPDATE user SET Password=PASSWORD('pass') WHERE user='root'; Query OK, 2 rows affected (0.05 sec) Rows matched: 2 Changed: 2 Warnings: 0

Ćwiczenia laboratoryjne nr 11 Bazy danych i SQL.

Wykład 05 Bazy danych

Relacyjne bazy danych. Podstawy SQL

strukturalny język zapytań używany do tworzenia i modyfikowania baz danych oraz do umieszczania i pobierania danych z baz danych

Język SQL, zajęcia nr 1

Wstęp 5 Rozdział 1. Podstawy relacyjnych baz danych 9

Aby uruchomić program klienta i połączyć się z serwerem, należy komendę:

Przestrzenne bazy danych Podstawy języka SQL

Systemy GIS Tworzenie zapytań w bazach danych

Bazy danych SQL Server 2005

Relacyjne bazy danych. Podstawy SQL

PRZESTRZENNE BAZY DANYCH WYKŁAD 2

Ref. 7 - Język SQL - polecenia DDL i DML

Projektowanie systemów baz danych

Autor: Joanna Karwowska

opisuje nazwy kolumn, wyrażenia arytmetyczne, funkcje nazwy tabel lub widoków warunek (wybieranie wierszy)

Bazy danych 7. SQL podstawy

Programowanie w SQL procedury i funkcje. UWAGA: Proszę nie zapominać o prefiksowaniu nazw obiektów ciągiem [OLIMP\{nr indeksu}] Funkcje użytkownika

Ćwiczenie zapytań języka bazy danych PostgreSQL

Wyzwalacze (triggery) Przykład

P o d s t a w y j ę z y k a S Q L

Przykłady najlepiej wykonywać od razu na bazie i eksperymentować z nimi.

Bazy danych. Wykład IV SQL - wprowadzenie. Copyrights by Arkadiusz Rzucidło 1

Autor: Joanna Karwowska

Literatura: SQL Ćwiczenia praktyczne Autor: Marcin Lis Wydawnictwo: Helion. Autor: Joanna Karwowska

Wykład 6. SQL praca z tabelami 3

Imię i Nazwisko Data Ocena. Laboratorium 7

Po prawidłowym podłączeniu do serwera MySQL należy wybrać bazę, na której będziesz pracować:

Laboratorium nr 8. Temat: Podstawy języka zapytań SQL (część 2)

Wybór wszystkich danych: SELECT * FROM employee Wybór określonych kolumn lub wyrażeń: SELECT first_name, last_name, salary FROM employee

CREATE DATABASE ksiegarnia_internetowa DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;

Język SQL. Rozdział 2. Proste zapytania

Podstawowe zapytania SELECT (na jednej tabeli)

Widok Connections po utworzeniu połączenia. Obszar roboczy

Bazy Danych - Instrukcja do Ćwiczenia laboratoryjnego nr 8

- język zapytań służący do zapisywania wyrażeń relacji, modyfikacji relacji, tworzenia relacji

Bazy Danych i Usługi Sieciowe

SIECI KOMPUTEROWE I BAZY DANYCH

Systemy internetowe. Wykład 4 mysql. West Pomeranian University of Technology, Szczecin; Faculty of Computer Science

1. Połączenie z bazą danych. W wybranym edytorze tworzymy plik sqltest.py i umieszczamy w nim poniższy kod. #!/usr/bin/python3 import sqlite3

Instalacja MySQL.

77. Modelowanie bazy danych rodzaje połączeń relacyjnych, pojęcie klucza obcego.

SQL - Structured Query Language -strukturalny język zapytań SQL SQL SQL SQL

Bazy danych i usługi sieciowe

Wprowadzenie do baz danych

Podstawy języka SQL Co to jest SQL? Możliwości SQL SQL*Plus

Struktura drzewa w MySQL. Michał Tyszczenko

Języki programowania wysokiego poziomu. PHP cz.4. Bazy danych

Bazy danych. Bazy danych. Podstawy języka SQL. Dr inż. Paweł Kasprowski.

Wyświetl imie i nazwisko ucznia, nazwę przedmiotu z którego otrzymał ocenę niedostateczną. Nazwij tę kwerendę oceny niedostateczne.

Bazy danych 5. Samozłaczenie SQL podstawy

Autor: Joanna Karwowska

KOLEKCJE - to typy masowe,zawierające pewną liczbę jednorodnych elementów

Bazy danych 6. Klucze obce. P. F. Góra

1. Sprawdzenie ustawień konfiguracyjnych. Uruchomienie wiersza poleceń:..\ścieżka\bin>mysqladmin variables

Wprowadzenie do języka SQL

Bazy danych 10. SQL Widoki

Odnawialne Źródła Energii I rok. Tutorial PostgreSQL

SQL, LIKE, IN, CASE, EXISTS. Marcin Orchel

CREATE TABLE logika (p BOOLEAN); INSERT INTO logika VALUES(true); INSERT INTO logika VALUES(false); INSERT INTO logika VALUES(NULL);

Wykład 8. SQL praca z tabelami 5

Podstawy języka SQL. standardy SQL formułowanie zapytań operacje na strukturach danych manipulowanie danymi. Bazy danych s.5-1

SELECT * FROM tabela WHERE warunek wybiera dane spełniające podany warunek

Podstawy języka SQL. SQL Structured Query Languagestrukturalny

MySQL. Æwiczenia praktyczne

BAZY DANYCH. CREATE TABLE dbo.wydzialy (ID INT, Akronim VARCHAR(4) NOT NULL, Wydzial VARCHAR(30) NOT NULL, CONSTRAINT Kluczyk PRIMARY KEY(ID) )

Trigger jest obiektem związanym z tablicą, który aktywuje się gdy do tablicy następuje odpowiednie zapytanie.

Podstawowe funkcje dodatku linq w C#

CREATE USER

5.5. Wybieranie informacji z bazy

Komunikacja z bazą danych psql

SQL - Structured Query Language. strukturalny język zapytań

Jerzy Nawrocki, Wprowadzenie do informatyki

Tworzenie tabeli przez select CREATE TABLE PRAC2 AS SELECT P.NAZWISKO, Z.NAZWA FROM PRAC P NATURAL JOIN ZESP Z

Język SQL. instrukcja laboratoryjna. Politechnika Śląska Instytut Informatyki. laboratorium Bazy Danych

Grupowanie i funkcje agregujące

Baza danych. Baza danych jest to zbiór danych powi zanych mi dzy sob pewnymi zale no ciami.

W tej części zajmiemy się ćwiczeniami dotyczącymi modyfikacji rekordów.

Informatyka 3 : Instrukcja 4 / 5

Instrukcja podwaja zarobki osób, których imiona zaczynają się P i dalsze litery alfabetu zakładamy, że takich osbób jest kilkanaście.

Marek Rakowski Podstawy zdania SELECT Strona 1 z 12

Bazy danych 12. SQL Wyszukiwanie pełnotekstowe

Technologie baz danych

Bazy danych 4. SQL podstawy. P. F. Góra

Język SQL Złączenia. Laboratorium. Akademia Morska w Gdyni

Indeksowanie w bazach danych

Tworzenie tabel. Bazy danych - laboratorium, Hanna Kleban 1

Bazy danych 6. Podzapytania i grupowanie. P. F. Góra

Transkrypt:

strona nr 1 Warunki Warunki w zapytaniu SELECT umożliwiaj ą dokładniejsze określanie, jakie rekordy maj ą zosta ć wybrane. Możesz wybra ć na przykład rekord o numerze id równym 3. Jak zwykle w warunkach możesz używa ć operatorów porównania. Poniższa tabela przedstawia dostępne operatory dla warunków: = Równość <>,!= Nierówność < Mniejsze > Wię ksze <= Mniejsze równe >= Wię ksze równe Spójrzmy ma przykład wybierający rekord o numerze id równym 3: SELECT * FROM ksiazka_adresowa WHERE id = 3; -------------------+-----------+-------+ telefon email -------------------+-----------+-------+ 3 <podaj imie> ul. Warszawska 15 468-34-75 NULL -------------------+-----------+-------+ 1 row in set (0.06 sec) Możesz oczywiście podawa ć więcej ni ż jeden warunek. Do łączenia warunków słu żą operatory logiczne, takie jak AND i OR: SELECT id, imie, telefon FROM ksiazka_adresowa WHERE (id>=2 AND id<4) OR (imie='jan'); -----------+ id imie telefon -----------+ 1 Jan 888-55-41 2 777-33-84 3 <podaj imie> 468-34-75 -----------+ 3 rows in set (0.05 sec) Jak wida ć na powyższym przykładzie, grupy warunków umieszcza si ę w nawiasach. Wyraż enie IN Zamiast podawa ć grupy warunków dla wartości, które mog ą znale źć si ę w grupie wyników, można posłuży ć si ę wyrażeniem IN. Spójrzmy najpierw na przykład wybierania rekordów zawierających numer id równy 1, 2 lub 4: SELECT id, adres FROM ksiazka_adresowa WHERE id=1 OR id=2 OR id=4;

strona nr 2 id adres 1 ul. Wrocł 2 ul Krakowska 16 4 NULL To samo można zapisa ć znacznie prościej za pomoc ą wyrażenie IN, które definiuje grup ę dopuszczalnych wartoś ci dla pola: SELECT id, adres FROM ksiazka_adresowa WHERE id IN(1,2,4); id adres 1 ul. Wrocł 2 ul Krakowska 16 4 NULL Jak wida ć użycie tego wyraż enia znacznie upraszcza zapytanie SQL. Wyraż enie BETWEEN Wyrażenie between ( ang: pomię dzy) umożliwia określenie górnego i dolnego zakresu dla wartości pól rekordu. Spójrzmy najpierw na przykład wybierania rekordów o numerach id od 1 do 3 za pomoc ą standardowego WHERE: SELECT id, telefon, email FROM ksiazka_adresowa WHERE id>=1 AND id<=3; id telefon email 1 888-55-41 jan@email.pl 2 777-33-84 zebra@zoo.pl 3 468-34-75 NULL A teraz za pomoc ą wyrażenia BETWEEN: SELECT id, telefon, email FROM ksiazka_adresowa WHERE id BETWEEN 1 AND 3; id telefon email 1 888-55-41 jan@email.pl 2 777-33-84 zebra@zoo.pl 3 468-34-75 NULL

strona nr 3 Jak wida ć, użycie tego wyraż enia znacznie upraszcza zapytanie. Wyraż enie NOT Wyrażenie NOT pozwala zanegowa ć wyrażenie takie jak IN czy BETWEEN. Spójrzmy na przykład wybierania rekordów z pominięciem rekordów o id równym 1 i 3: SELECT id, imie, adres FROM ksiazka_adresowa WHERE id NOT IN(1,3); 4 <podaj imie> NULL Spójrzmy jeszcze na przykład wybierania rekordów, których numer przedziale od 2 do 4: id nie zawiera si ę w SELECT id, telefon FROM ksiazka_adresowa WHERE id NOT BETWEEN 2 AND 4; +----+-----------+ id telefon +----+-----------+ 1 888-55-41 +----+-----------+ 1 row in set (0.00 sec) Sortowanie Domyślnie wybrane rekordy s ą sortowane w takiej kolejności, w jakiej zostały dodane do bazy. Można jednak t ę kolejno ść zmieni ć używając polecenia ORDER BY. Spójrzmy na przykład wybierający z bazy danych rekordy posortowane wedł ug imienia: SELECT id, imie, adres FROM ksiazka_adresowa ORDER BY imie; 3 <podaj imie> ul. Warszawska 15 4 <podaj imie> NULL 1 Jan ul. Wrocł

strona nr 4 4 rows in set (0.00 sec) Kolejno ść rekordów zmieniła si ę, co najlepiej uwidacznia kolumna z numerami id. Spróbujmy jeszcze posortowa ć rekordy wedł ug dwu pól: imienia i adresu: SELECT id, imie, adres FROM ksiazka_adresowa ORDER BY imie, adres; 4 <podaj imie> NULL 3 <podaj imie> ul. Warszawska 15 1 Jan ul. Wrocł 4 rows in set (0.00 sec) Jak wida ć, wyniki zostały posortowane według imienia, a te, które miały tak ą sam ą warto ść w tym polu, zostały dodatkowo posortowane według pola adres. Możesz wpływa ć na kierunek sortowania za pomoc ą słów kluczowych ASC (domyślnie) i DESC (kierunek odwrotny). Spróbujmy zatem posortowa ć numery id w odwrotnej kolejnoś ci: SELECT id, imie, adres FROM ksiazka_adresowa ORDER BY id DESC; 4 <podaj imie> NULL 3 <podaj imie> ul. Warszawska 15 1 Jan ul. Wrocł 4 rows in set (0.00 sec) Sł owo kluczowe DISTINCT Czasem zachodzi potrzeba, aby wśród podanych w jednej kolumnie wyników zapytania nie powtarzały si ę wartości. Do tego celu służy słowo kluczowe DISTINCT. Spójrzmy najpierw na normalne wybieranie wartości kolumny SELECT imie FROM ksiazka_adresowa; imie Jan <podaj imie> <podaj imie> imie:

strona nr 5 4 rows in set (0.00 sec) Jak wida ć warto ść '<podaj imie>' występuje dwa razy. Spójrzmy teraz na wynik po użyciu słowa kluczowego DISTINCT: SELECT DISTINCT imie FROM ksiazka_adresowa; imie Jan <podaj imie> Jak wida ć wartości si ę ju ż nie powtarzaj ą. Porównanie LIKE Porównanie LIKE umożliwia tworzenie wzorców w zapytaniach. Spójrzmy na przykład wybierający pozycj ę w których pole imie na warto ść '<podaj imie>', za pomoc ą typowego warunku WHERE: SELECT id, imie FROM ksiazka_adresowa WHERE imie='<podaj imie>'; id imie 3 <podaj imie> 4 <podaj imie> A teraz za pomoc ą porównania LIKE: SELECT id, imie FROM ksiazka_adresowa WHERE imie LIKE '<%>'; id imie 3 <podaj imie> 4 <podaj imie> Jak wida ć, wynik jest ten sam, a możliwości wię ksze. Znak % onacza dowolny ciąg znaków, natomiast znak _ oznacza dokł adnie jeden znak:

strona nr 6 SELECT id, imie, adres FROM ksiazka_adresowa WHERE imie LIKE '_an'; 1 Jan ul. Wrocł 1 row in set (0.00 sec) Porcjowanie wyników zapytania Jeżeli nie interesuj ą nas wszystkie rekordy pasujące do zapytania, a na przykład jedynie pierwsze 10, możesz posłuży ć si ę klauzul ą LIMIT. Spójrzmy na przykład wybierający z naszej książki adresowej tylko pierwsze dwa rekordy: SELECT id, imie, adres FROM ksiazka_adresowa LIMIT 2; 1 Jan ul. Wrocł Jak wida ć, aby zaznaczy ć, że chcesz otrzyma ć określon ą liczb ę rekordów, powinno si ę posłuży ć si ę klauzul ą LIMIT, po której podasz odpowiedni ą warto ść. Spójrzmy na przykład pobierania dwóch rekordów, począwszy od drugiego (dla MySQL-a będzie to jednak rekord 1, poniewa ż tutaj rekordy liczy si ę, zaczynają c od zera): SELECT id, imie, adres FROM ksiazka_adresowa LIMIT 1,2; 3 <podaj imie> ul. Warszawska 15 Jak wida ć z powyższego przykładu, aby pobra ć określon ą liczb ę rekordów, począwszy od ustalonego, podajemy po przecinku numer rekordu początkowego i liczb ę rekordów z zbiorze zapytania. Pierwszy przykład pobierania dwóch rekordów można równie ż zapisa ć, podając rekord, od którego ma si ę zacz ąć pobieranie wyników (czyli podamy zera jako pozycj ę pierwszego rekordu):

strona nr 7 SELECT id, imie, adres FROM ksiazka_adresowa LIMIT 0,2; 1 Jan ul. Wrocł MODYFIKACJA REKORDÓW Zauważyłe ś pewnie że pozycja dodana jako druga, po skrócie 'ul' nie zawiera kropki. Spróbujmy teraz to poprawi ć za pomoc ą polecenia UPDATE. Składnia tego polecenia przedstawia si ę następują co: UPDATE <nazwa_bazy>.<nazwa_tabeli> SET <nazwa_pola> = 'warto ść' WHERE <warunek> lub UPDATE <nazwa_tabeli> SET <nazwa_pola> = 'warto ść ' WHERE <warunek> jeżeli wcześniej zostało uż yte polecenie use <nazwa_bazy>. Spróbujmy zatem poprawi ć warto ść pola adres, które ma id numer 2: UPDATE ksiazka_adresowa SET adres = 'ul. Krakowska 16' WHERE id = 2; Query OK, 1 row affected (0.05 sec) Rows matched: 1 Changed: 1 Warnings: 0 Spójrzmy teraz na rekord o numerze id równym 2: SELECT * FROM ksiazka_adresowa WHERE id = 2; ----------- telefon email ----------- 2 ul. Krakowska 16 777-33-84 zebra@zoo.pl ----------- 1 row in set (0.00 sec) USUWANIE REKORDÓW Na koniec zajmiemy si ę usuwaniem rekordów, Służy do tego celu polecenie DELETE, którego składnia przedstawia si ę następują co: DELETE FROM <nazwa_bazy>.<nazwa_tabeli> WHERE <warunek>

strona nr 8 lub DELETE FROM <nazwa_tabeli> WHERE <warunek> jeżeli wcześniej zostało użyte polecenie use <nazwa_bazy>. Jeżeli warunek WHERE... nie zostanie podany, zawarto ść całej tabeli zostanie usunię ta. Spróbujmy teraz usun ąć rekord o id równym 3: DELETE FROM ksiazka_adresowa WHERE id = 3; Query OK, 1 row affected (0.06 sec) I spójrzmy jak teraz wygląda zawarto ść naszej tabeli 'ksiazka_adresowa': SELECT * FROM ksiazka_adresowa; ----------- telefon email ----------- 1 Jan ul. Wrocł 888-55-41 jan@email.pl 2 ul. Krakowska 16 777-33-84 zebra@zoo.pl 4 <podaj imie> NULL 471-84-36 my@email.pl ----------- Jak wida ć, wartości numerów id nie przeindeksowały si ę (pole auto_increment), a następny numer id, jaki zostanie dodany, będzie mia ł warto ść o jeden większ ą od największego, czyli 5. Ć wiczenie 1 Utwórz tabel ę o nazwie moja w swojej bazie danych. Niech tabela zawiera trzy kolumny: imi ę, nazwisko, wiek. Kolumny niech będ ą typu znakowego o zmiennej długości (VARCHAR). Pamiętaj aby wcześniej wybra ć odpowiedni ą baz ę, w tórej chcesz utworzy ć tabel ę. Aby wybra ć baz ę danych należy posłuży ć si ę poleceniem USE. Polecenie to wymaga podania nazwy bazy. np.: use baza1. Aby stworzy ć tabele w SQL-u należy uż yć polecenia: CREATE TABLE nazwa_tabeli (nazwa_pola1 właściwości_pola1, nazwa_pola2 właściwoś ci_pola2, itd.) Nazwa_tabeli to wybrana przez nas nazwa dla danej tabeli. Nie może ona zawiera ć spacji, polskich liter ani innych znaków specjalnych. To samo dotyczy nazwy_pola. Właściwo ść_pola to dane które określaj ą pole. Informacje o możliwych wartoś ciach znajdziecie w dokumentacji bazy danych w której pracujecie. Ć wiczenia 2 Wpisz 5 rekordów do utworzonej tabeli Kiedy mamy ju ż stworzon ą tabel ę musimy wprowadzi ć do niej dane. Robimy to za pomoc ą

strona nr 9 polecenia: INSERT INTO nazwa_tabeli (pole1, pole2) VALUES ("wartość1", "wartość2", itd); Wartości wprowadzamy w kolejności pól w tabeli któr ą poprzednio stworzyliśmy. Należy pamięta ć aby umieszcza ć wartości w tzw. " uszkach" czyli wewną trz znaczników ' '. Ć wiczenie 3 Wyś wietl wprowadzone rekordy do swojej bazy danych Kiedy mamy nasz ą tabele i wypełniliśmy j ą odpowiedni ą ilości ą danych czas na ich wyświetlenie. Aby wyświetli ć wpisy z tabeli uż ywamy polecenia: SELECT * FROM nazwa_tabeli W ten sposób otrzymamy wszystkie rekordy w danej tabeli w kolejności w jakiej zostały do niej wprowadzone. Np: Aby wyświetli ć list ę autorów z utworzonej tabeli autor używamy polecenia. SELEST * FROM autor W ten sposób na ekranie pojawi ą mi si ę wszystkie rekordy tej tabeli. Ć wiczenie 4 Wyświetl zawarto ść swojej tabeli w sposób posortowany a)wedł ug imienia od a do z b)wedł ug nazwiska od z do a Jeżeli chcemy posortowa ć wyniki uzyskane poprzez wyświetlenie wszystkich rekordów w bazie to musimy wybra ć pole według którego chcemy sortowa ć, a następnie sposób sortowania wyników. SELECT * FROM nazwa_tabeli ORDER BY nazwa_pola sposób_sortowania Nazwa_pola jest polem według którego sortujemy, a sposób sortowania to: DESC - sortowanie od Z do A ASC - sortowanie od A do Z Np: Dla stworzonej tabeli z autorami jeżeli chcielibyśmy posortowa ć j ą w kolejności od Z do A i sortowanie miało by si ę odbywa ć względem wartości w polu nazwisko to polecenie wygląda następują co: SELECT * FROM autor ORDER BY nazwisko DESC W ten sposób wyświetlaj ą nam si ę wszyscy autorzy w kolejnoś ci od Z do A Ć wiczenie 5 Uaktualnianie danych w tabeli. Zmie ń wszystkie imiona na "Jan". Aby zmieni ć warto ść pola tabeli lub j ą nadpisa ć uż ywamy polecenia UPDATE nazwa_tabeli SET nazwa_pola="warto ść " Nazwa_pola to oczywiście pole którego warto ść chcemy zmieni ć, a warto ść to dane jakie do tego pola wpisujemy. Np: Dla tabeli autor wyglądało by to następująco UPDATE autor SET imie=" Łukasz" Te polecenie zmieni imiona wszystkich autorów na Łukasz. Jeżeli mamy na przykład warto ść liczbow ą w danym polu i chcemy doda ć do niej jeszcze inn ą warto ść to należy wykona ć to tak: UPDATE nazwa_tabeli SET nazwa_pola="warto ść+kolena_warto ść" Wtedy w polu o podanej nazwie do istniejącej ju ż tam wartości zostanie dodana nowa. Np: Dodałem do tabeli autor pole o nazwie zarobek i wstawiłem do niego sum ę jak ą otrzymałem za napisanie jakiego ś artykułu. Pole te ma właściwo ść INT przez co będzie ono przyjmowało tylko liczby. No więc chcąc doda ć do wartości tego pola jeszcze dodatkow ą kwot ę za napisanie kolejnego artykułu napisze polecenie: UPDATE autor SET zarobek="zarobek+200" Spowoduje to zwiększenie si ę wartoś ci pola zarobek o 200. Ć wiczenie 6 Wyświetlanie warunkowe Kiedy ś na pewno zajdzie potrzeba wyświetlenia rekordów

strona nr 10 odpowiadających odpowiednim warunkom. W tedy należy uży ć konstrukcji. SELECT * FROM nazwa_tabeli WHERE nazwa_pola="warto ść" Nazwa_pola to oczywiście pole wobec którego chcemy posegregowa ć dane, a warto ść to odpowiednie dane zapisane w tym polu. Np: Gdybym z tabeli autor chcia ł wyświetli ć wszystkich których zarobek wynosi 400 to użyłbym polecenia: SELECT * FROM autor WHERE zarobek="400" Otrzymam wszystkie rekordy spełniające powyższy warunek. Jest jeszcze możliwe określenie kilku warunków dla danego pola. Dokonuje si ę tego za pomoc ą operatora AND. SELECT * FROM nazwa_tabeli WHERE nazwa_pola="warto ść" AND nazwa_pola="warto ść" Wyświetl ą si ę tylko rekordy spełniające oba warunki jednocześnie. Np: Gdyby z tabeli autor chcie ć wyświetli ć wszystkich których zarobek wynosi 400 i na imi ę maj ą Łukasz użyłbym konstrukcji: SELECT * FROM autor WHERE zarobek="400" AND imie=" Łukasz" Otrzymam tylko rekordy spełniające te warunki. Jest jeszcze możliwe określenie kilku róż nych warunków dla danego pola. Dokonuje si ę tego z pomoc ą operatora OR. SELECT * FROM nazwa_tabeli WHERE nazwa_pola="warto ść" OR nazwa_pola="warto ść" Wyświetl ą si ę tylko rekordy które spełniaj ą warunek pierwszy lub spełniaj ą warunek drugi. Np: Gdyby z tabeli autor chcie ć wyświetli ć wszystkich których zarobek wynosi 400 lub na imi ę maj ą Łukasz użyłbym konstrukcji: SELECT * FROM autor WHERE zarobek="400" OR imie=" Łukasz" Otrzymam tylko rekordy spełniają ce jeden z tych warunków. Ć wiczenie 7 Wyświetlanie rekordu zawierającego słowo Jeżeli chcemy wyświetli ć wszystkie rekordy zawierające jaki ś wyraz lub jak ąś liter ę, lub te ż cze ść wyrazu, używamy polecenia: SELECT * FROM nazwa_tabeli WHERE nazwa_pola LIKE "warto ść" Nazwa_pola to oczywiście pole względem którego wartości szukamy. Jeżeli nie znamy pełnego wyrazu to jego brakujące części zastępujemy znakiem procentu "%" Np: Jeżeli początek wyrazu to "ba", a reszty nie znamy to taki sposób zapisu wygląda następująco "ba%". Jeżeli koniec wyrazu to "za", a początku nie znamy to taki sposób zapisu wygląda następująco "%za". Jeżeli środek wyrazu to "az", a reszty nie znamy to taki sposób zapisu wygląda następująco "%az%". Zastępujemy litery początkowe i końcowe znakiem procenta "%" co pozwoli na wstawienie w ich miejsce dowolnej wartości. Np: Jeżeli z tabeli autor poszukujemy kogo ś o imieniu zaczynającym si ę na " Łuka" i nie znamy reszty to takie polecenie wygląda następująco. SELECT * FROM autor WHERE imie LIKE " Łuka%" W ten sposób otrzymamy rekordy spełniające dany warunek. Można także wymyśli ć sobie to, aby na przykład dane pole nie zawierało ciągu znaków. Postępujemy tak jak poprzednio z tym, że zmienia si ę cze ść komendy. Przed LIKE wstawiamy operator NOT. SELECT * FROM nazwa_tabeli WHERE nazwa_pola NOT LIKE "warto ść " Ć wiczenie 8 Wartości pomiędzy Jeżeli chcemy wyświetli ć wszystkie rekordy w których w danym polu znajduj ą si ę wartości pomiędzy jakimi ś przedziałami to używamy polecenia: SELECT * FROM nazwa_tabeli WHERE nazwa_pola BETWEEN "warto ść" AND "warto ść" Nazwa_pola to pole wobec którego zamierzamy sortowa ć. Np: Z tabeli autor mamy zamiar wyświetli ć wszystkie osoby których zarobek mieści si ę pomiędzy 200 a 600. Aby to zrobi ć używamy polecenia: SELECT * FROM autor WHERE zarobek BETWEEN "200" AND "600" Ć wiczenie 9 Liczenie ilości rekordów Aby policzy ć ile rekordów znajduje si ę w naszej bazie danych używamy polecenia: SELECT COUNT(*) FROM nazwa_tabeli Nazwa_tabeli to tabela dla

strona nr 11 której stosujemy operacj ę Np: Aby policzy ć ile rekordów jest w naszej tabeli autor używamy polecenia: SELECT COUNT(*) FROM autor W odpowiedzi otrzymamy liczb ę całkowit ą. Ć wiczenie 10 Sumowanie wartości pola Często zachodzi potrzeba sumowania wartości pola. Robimy to poleceniem: SELECT SUM(nazwa_pola) FROM nazwa_tabeli Nazwa_pola to pole którego warto ść będziemy sumowa ć. Np: Aby zsumowa ć zarobek wszystkich autorów w tabeli autor polecenie musi wygląda ć następująco: SELECT SUM(zarobek) FROM autor W odpowiedzi otrzymamy warto ść liczbow ą Ć wiczenie 11 Zmiana rozmiaru liter Jeżeli zaistnieje potrzeba zmiany zapisanych w danym polu liter z małych na duże to używamy polecenia: UPDATE nazwa_tabeli SET nazwa_pola=upper(nazwa_pola) Nazwa_pola to pole wobec którego chcemy zastosowa ć t ą funkcj ę. Np: Aby zmieni ć wielko ść liter w naszej tabeli autor w polu nazwisko z małych na duże wpisujemy polecenie: UPDATE autor SET nazwisko=upper(nazwisko) W ten sposób warto ść pola nazawisko została zamieniona na wielkie litery. Można zrobi ć te ż na odwrót, to znaczy zmieni ć duże litery na małe, wystarczy tylko uży ć polecenia LOWER UPDATE nazwa_tabeli SET nazwa_pola=lower(nazwa_pola) Ć wiczenie 12 Kasowanie rokordów Usuwania rekordów dokonuje si ę za pomoc ą polecenia: DELETE FROM nazwa_tabeli WHERE nazwa_pola LIKE "warto ść" Taka komenda usuwa rekordy z danej tabeli, które spełniaj ą warunek. Np: Aby usun ąć z tabeli autor wpis określający mnie należało by wpisa ć jedno z następujących polece ń: DELETE FROM autor WHERE imie LIKE " Łukasz" lub DELETE FROM autor WHERE nazwisko LIKE "Sosna" lub DELETE FROM autor WHERE zarobek LIKE "400" Należy przy tym uważa ć aby nie usuną ć przypadkiem jakiego ś innego rekordu spełniającego ten warunek. Najlepiej więc posłuży ć si ę ID danego rekordu. Jako i ż wprowadziłem si ę do bazy jako pierwsz ą pozycje moje ID wynosi 0. Prawidłowe polecenie wygląda więc: DELETE FROM autor WHERE id_autor LIKE "0" To gwarantuje usunięcie tylko jednego wpisu. ID nie powtarza si ę w żadnym innym rekordzie. Baza danych na to nie pozwoli.