0Pricing
Coding Interview Prep · Lekcja

Czym jest SQL i dlaczego rekruterzy o niego pytają

Definiowanie SQL, DDL, DML, DCL i TCL oraz wyjaśnienie różnicy między SQL a relacyjnym silnikiem baz danych

Czym jest SQL i dlaczego rekruterzy o niego pytają to bezpłatna lekcja Coding Interview Prep na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Coding Interview Prep, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Coding Interview Prep zawiera 4 lekcji w sumie.

Dlaczego to pytanie otwiera rozmowę kwalifikacyjną

Prawie każda rozmowa kwalifikacyjna dotycząca SQL zaczyna się od pytania „Czym jest SQL?” To swoiste sito: dobra odpowiedź wyjaśnia, czym jest SQL, na czym operuje i jakie ma typy instrukcji. Przygotujmy taką odpowiedź.

Czym właściwie jest SQL

SQL to deklaratywny język relacyjnych baz danych: opisuje się w nim oczekiwany wynik, a silnik ustala sposób jego uzyskania. SQL operuje na tabelach złożonych z wierszy i kolumn.

SELECT name, salary
FROM employees
WHERE department = 'Engineering';

SQL to nie silnik bazy danych

Częsta pułapka: SQL jest językiem, natomiast MySQL, Postgres i Oracle to silniki, które go implementują. Każdy z nich dodaje własny dialekt do standardu.

Cztery kategorie instrukcji

Osoby prowadzące rozmowę kwalifikacyjną często proszą o skategoryzowanie instrukcji SQL. Istnieją cztery grupy: DDL służące do definiowania struktury, DML do operowania na danych, DCL do zarządzania uprawnieniami oraz TCL do obsługi transakcji.

DDL: Definiowanie struktury

DDL kształtuje bazę danych: CREATE, ALTER, DROP, TRUNCATE. Warto wspomnieć o pewnym szczególe: większość instrukcji DDL automatycznie zatwierdza transakcję, dlatego zwykle nie można ich wycofać.

CREATE TABLE employees (
  id INTEGER PRIMARY KEY,
  name VARCHAR(100) NOT NULL,
  department VARCHAR(50),
  salary NUMERIC(10,2)
);

DML: Operowanie na danych

DML zmienia wiersze wewnątrz tabel: INSERT, UPDATE, DELETE oraz SELECT. Bezpieczna odpowiedź brzmi: „SELECT to przeznaczona tylko do odczytu instrukcja DML, czasami wyróżniana osobno jako DQL”.

UPDATE employees
SET salary = salary * 1.10
WHERE department = 'Engineering';

DCL: Kontrolowanie dostępu

DCL określa, kto może wykonywać poszczególne działania, za pomocą zaledwie dwóch poleceń: GRANT nadaje uprawnienie, a REVOKE je odbiera. Pokazuje to znajomość wielodostępnego charakteru bazy danych.

GRANT SELECT, INSERT ON employees TO analyst_role;
REVOKE INSERT ON employees FROM analyst_role;

TCL: Kontrolowanie transakcji

TCL grupuje zmiany w transakcje typu wszystko albo nic: BEGIN, COMMIT, ROLLBACK, SAVEPOINT. Słowem kluczowym jest atomowość: wszystko zostaje wykonane albo nie zostaje wykonane nic.

BEGIN;
UPDATE accounts SET balance = balance - 100 WHERE id = 1;
UPDATE accounts SET balance = balance + 100 WHERE id = 2;
COMMIT;

Deklaratywny a proceduralny

Dlaczego SQL jest deklaratywny? Określa się oczekiwany wynik, a optymalizator zapytań wybiera sposób jego uzyskania. SQL jest także oparty na zbiorach: operuje jednocześnie na całych zbiorach wierszy.

Przykład: Kategoryzowanie instrukcji

Podczas rozmowy kwalifikacyjnej często otrzymuje się instrukcje, które trzeba oznaczyć odpowiednią kategorią. Poniższy kod pokazuje w działaniu wszystkie cztery kategorie, a także klasyczną pułapkę: TRUNCATE usuwa dane, ale należy do DDL.

Ujęcie tego w 30-sekundowej odpowiedzi

Warto przygotować zwięzłą, 30-sekundową odpowiedź, którą można wygłosić pod presją. Poniższa definicja w ramce obejmuje pytanie otwierające oraz kilka prawdopodobnych pytań dodatkowych w jednej wypowiedzi.

Szybki test

Sprawdź znajomość kategorii instrukcji.

Podsumowanie

Podsumowanie: SQL to deklaratywny język operujący na zbiorach danych relacyjnych. Dzieli się na DDL, DML, DCL, TCL. Należy pamiętać o pułapkach: TRUNCATE należy do DDL, a SELECT jest przeznaczoną tylko do odczytu instrukcją DML.

Często zadawane pytania

Czy lekcja „Czym jest SQL i dlaczego rekruterzy o niego pytają” jest bezpłatna?

Tak — pełny tekst „Czym jest SQL i dlaczego rekruterzy o niego pytają” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Coding Interview Prep, przejdź na CoddyKit PRO. Kurs Coding Interview Prep zawiera 4 lekcji w sumie.

Co nauczysz się w „Czym jest SQL i dlaczego rekruterzy o niego pytają”?

Definiowanie SQL, DDL, DML, DCL i TCL oraz wyjaśnienie różnicy między SQL a relacyjnym silnikiem baz danych Ćwiczysz Coding Interview Prep z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Coding Interview Prep?

Nie wymagamy żadnego doświadczenia. Coding Interview Prep w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „Czym jest SQL i dlaczego rekruterzy o niego pytają”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Coding Interview Prep?

Tak. Każda lekcja Coding Interview Prep zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Czym jest SQL i dlaczego rekruterzy o niego pytają
  2. Logiczna kolejność wykonywania zapytania
  3. Klucze główne, obce i ograniczenia
  4. Odczytywanie schematu pod presją
← Powrót do Coding Interview Prep