Podstawy SQL
Czynność
|
Komenda
|
Logowanie
|
mysql
-u NAZWA -p
|
Dodawanie
użytkownika
|
create
user 'NAZWA' identyfied by 'hasło' ;
|
Usuwanie
użyszkodnika
|
drop
user NAZWA;
|
Nadanie
prawa użytkownikowi do bazy
|
GRANT
ALL PRIVILEGES ON 'baza_danych’.* TO 'użytkownik';
|
Tworzenie
bazy danych
|
create
database NAZWA;
|
Usuwanie bazy danych
|
drop database NAZWA;
|
Wyświetlanie
istniejących baz
|
show
databases;
|
Wybranie
bazy danych
|
use
NAZWA;
|
Sprawdzenie,
która baza jest wybrana
|
select
database();
|
Wyświetlenie
table w bazie danych
|
show
tables;
|
Dodawanie
tabeli
|
create
table NAZWA (kolumna typ wartość, kolumna 1 typ wartość);
np.:
create table ludziki ( lp int primary key, imię char(20) not
null, nazwisko char(20));
|
Usuwanie tabeli
|
drop table NAZWA;
|
Wyświetlanie
struktury tabeli
|
Describe
nazwa_tabeli;
|
Dodawanie
rekordów
|
insert
into NazwaTabeli values(liczba, 'napis');
np.
insert into ludziki values(1, 'Genek', 'Kowalski');
|
Usuwanie rekordów
|
delete from NazwaTabeli WHERE warunek;
np. delete from ludziki WHERE lp=1;
|
Modyfikowanie wartości tabeli
|
UPDATE NazwaTabeli SET NazwaKolumny='nowa_wartość' WHERE NazwaKolumny=wartość
np. UPDATE ludziki SET imie ='Jurek' WHERE id=1;
|
Zmiana nazwy tabeli
|
ALTER TABLE NazwaTabeli RENAME TO NowaNazwa;
np. ALTER TABLE ludziki RENAME TO czlowieki;
|
Zmiana typu i nazwy kolumny
|
ALTER TABLE nazwatabeli MODIFY nazwakolumny Typnaktóry zmieniamy;
np. ALTER TABLE ludziki MODIFY login int;
|
Usuwanie kolumny Dodawanie kolumny
|
ALTER TABLE NazwaTabeli DROP COLUMN nazwakolumny;
np. ALTER TABLE Ludziki DROP COLUMN login; ALTER TABLE ludziki ADD Login char(200 |
Wyświetlenie
zawartości całej tabeli
|
select
* FROM nazwatabeli;
|
Warunkowe
wyświetlenie zawartości tabeli
<
mniejsze
<=
mniejsze lub równe
=
równe
!=
różne
>=
większe lub równe
>
większe
|
SELECT
nazwa_kolumn FROM nazwatabeli WHERE warunek;
np. SELECT
imię,nazwisko FROM nazwatabeli WHERE nazwisko='kowalski';
|
Lekcja
2.
|
|
Import
danych z pliku do tabeli
(kolumny
rozdzielone tab)
|
~$
mysqlimport --local -u użytkownik -p nazwa_bazy nazwa_pliku
-----------------------------------------------------------
~$
mysqlimport --local -u root -p testowa dane.txt
|
Warunkowe
wyświetlenie zawartości tabeli z operatorem logicznym AND, OR,
NOT
|
SELECT
nazwa_kolumn FROM nazwatabeli WHERE warunek OR warunek1 AND
warunek2 ;
-----------------------------------------------------------
SELECT
imię, nazwisko, wiek FROM nazwatabeli WHERE nazwisko='kowalski'
AND wiek =25';
|
Warunkowe
wyświetlenie zawartości tabeli z wykonaniem działania arytm.
|
SELECT
nazwa_kolumny działanie FROM nazwatabeli;
-----------------------------------------------------------
SELECT
imię, nazwisko, pensja*2 FROM nazwatabeli WHERE
nazwisko='kowalski' AND wiek =25';
|
Wyświetlanie
zawartości tabeli ze zmianą nazw kolumn
AS
|
SELECT
nazwa_kolumny AS nowa_nazwa FROM nazwatabeli;
-----------------------------------------------------------
SELECT
imię, nazwisko, pensja*2 AS podwyzka FROM nazwatabeli;
|
Sortowanie
wyników zapytania
ORDER BY
[ASC, DESC]
|
SELECT
nazwa_kolumn FROM nazwatabeli ORDER BY nazwa_kolumny [ASC
(domyślnie), DESC];
----------------------------------------------------------
np. SELECT
imię,nazwisko FROM nazwatabeli ORDER BY nazwisko DESC;
//
sortowanie wg nazwiska w kolejności malejącej
|
Lekcja
3.
|
|
Ilościowe
ograniczenie zapytania
LIMIT
|
SELECT
nazwy_kolumn FROM nazwa_tabeli LIMIT wartość;
------------------------------------------------------------
np. SELECT
imię, nazwisko FROM nazwa_tabeli LIMIT 3;
//wyświetli
tylko 3 rekordy
-------------------------------------------------------------
np. SELECT
imię, nazwisko FROM nazwa_tabeli LIMIT 2,5;
//wyświetli
5 rekordów począwszy od drugiego
|
Dopasowanie
do wzorca
LIKE,
NOT LIKE
|
SELECT
nazwy_kolumn FROM nazwa_tabeli WHERE nazwa_kolumny LIKE 'wzorzec';
--------------------------------------------------------------
np. SELECT
imię, nazwisko FROM nazwa_tabeli WHERE imię LIKE 'a%'
//wyświetli
imiona rozpoczynające się na 'a' ('%a' – kończy się na 'a')
---------------------------------------------------------------
np. SELECT
imię, nazwisko FROM nazwa_tabeli WHERE imię LIKE '_____'
//_ _ -
oznacza ilość liter we wzorcu
|
Wyszukiwanie
bez redundacji
DISTINCT
|
SELECT
DISTINCT nazwy_kolumn FROM nazwa_tabeli ;
---------------------------------------------------------------
np. SELECT
DISTINCT wieś FROM miejscowości ;
|
Polecane Linki zewnętrzne: