Definicja
SQL (Structured Query Language) to standardowy język komunikacji z relacyjnymi bazami danych. Pozwala pobierać, wstawiać, aktualizować i usuwać dane.
Podstawowe operacje (CRUD)
| Operacja |
Komenda SQL |
Opis |
| Create |
INSERT |
Wstawianie nowych rekordów |
| Read |
SELECT |
Pobieranie danych |
| Update |
UPDATE |
Aktualizacja istniejących rekordów |
| Delete |
DELETE |
Usuwanie rekordów |
Najważniejsze komendy
-- Pobieranie z filtrowaniem
SELECT imie, nazwisko, email
FROM klienci
WHERE miasto = 'Warszawa'
ORDER BY nazwisko;
-- Złączenie tabel (JOIN)
SELECT z.numer, k.imie, p.nazwa
FROM zamowienia z
JOIN klienci k ON z.klient_id = k.id
JOIN produkty p ON z.produkt_id = p.id;
-- Agregacja
SELECT miasto, COUNT(*) as liczba_klientow, AVG(wartosc) as srednia
FROM klienci
GROUP BY miasto
HAVING COUNT(*) > 10;
Dlaczego BA powinien znać SQL?
| Bez SQL |
Z SQL |
| Proszę IT o raport (czekasz 2 dni) |
Sam sprawdzasz dane (5 minut) |
| Wymagania "na oko" |
Weryfikacja na realnych danych |
| "Chyba mamy 1000 klientów" |
SELECT COUNT(*) FROM klienci → 1247 |
| Trudności w rozmowie z dev |
Wspólny język z zespołem technicznym |
Poziomy znajomości SQL dla BA
| Poziom |
Umiejętności |
| Podstawowy |
SELECT, WHERE, ORDER BY, LIMIT |
| Średni |
JOIN, GROUP BY, HAVING, subquery |
| Zaawansowany |
Window functions, CTE, pivoting |
Narzędzia
- DBeaver — darmowe, uniwersalne (PostgreSQL, MySQL, SQLite...)
- pgAdmin — dla PostgreSQL
- DataGrip — JetBrains (płatne)
- DB Fiddle — online, bez instalacji
Powiązane pojęcia