Útmutatók

Mi az a SQL? Az adatbázis-nyelv egyszerűen elmagyarázva

A SQL (Structured Query Language, kiejtve „esz-kú-el” vagy „szekvel”) a relációs adatbázisokkal való munka szabványos nyelve – azoké, amelyek sorokból és oszlopokból álló táblákban tárolják az adatokat, például a Postgres, a MySQL, a SQLite és a SQL Server. A SQL-lel kérdezel rá az adataidra („mely ügyfelek foglaltak ebben a hónapban?”), és adhatsz hozzá, módosíthatsz vagy törölhetsz rekordokat. Az 1970-es évek óta létezik, nemzetközi szabvány, és a világ alkalmazásainak nagy részét hajtja.

Miért fontos a SQL, ha AI-val építkezel

Ha azt kéred egy AI-alkalmazás-építőtől, hogy „mentse el a rendeléseket” vagy „mutass egy listát a közelgő foglalásokról”, valaminek beszélnie kell az adatbázissal – és a legtöbb alkalmazásban ez SQL, akár közvetlenül írva, akár egy ORM által generálva.

Nem kell magadnak SQL-t írnod, de egy kis megértés megtérül:

  • Ellenőrizheted a saját adataidat. Egy rövid lekérdezés gyorsabban válaszol arra, hogy „hány regisztráció érkezett ezen a héten?”, mint egy új képernyő megépítése.
  • Jobb riportokat kérhetsz. A „bevétel havonként és szolgáltatásonként csoportosítva” SQL-gondolkodás. Ha ezt ismered, pontosabban kérhetsz.
  • Felismerheted a veszélyes változtatásokat. A WHERE feltétel nélküli DELETE vagy UPDATE minden sort érint. Ezt érdemes elkapni, mielőtt lefut.
  • Az adataid nincsenek bezárva. A SQL közös szabvány, így a SQL-adatbázisban lévő adatokat sok eszköz át tudja vinni és olvasni.

Hétköznapi hasonlat

Gondolj egy nagyon jól rendezett könyvtárra, ahol a könyvtáros csak egy pontos, egyszerű nyelven beszél.

Nem a polcok között keresgélsz magad. Odaadod a könyvtárosnak a cédulát: „Keress minden könyvet ettől a szerzőtől, 2010 után megjelentet, a legújabbal kezdve.” A könyvtáros kívülről ismeri az épületet, és pontosan azokat a könyveket hozza, abban a sorrendben.

A SQL az a nyelv a cédulán. Azt mondod meg, mit akarsz, nem azt, hogyan találd meg – az adatbázis maga találja ki a leggyorsabb utat.

Hogyan működik a SQL: táblák, sorok és oszlopok

A relációs adatbázis adatait táblákban tárolja. Minden tábla egyfajta dolgot tartalmaz, minden sor egy rekord, minden oszlop egy információ:

customers

idnameemailcity
1Lena Ortizlena@example.comLisbon
2Sam Patelsam@example.comLeeds

orders

idcustomer_idtotalplaced_at
101142.002026-09-20
102218.502026-09-22
103125.002026-09-27

A customer_id oszlop köti össze az egyes rendeléseket egy ügyféllel. Ez a kapcsolat teszi az adatbázist „relációssá”.

Munkapélda: valós kérdések megválaszolása

1. Adatok olvasása – „mutasd az összes lisszaboni ügyfelet”:

SELECT name, email
FROM customers
WHERE city = 'Lisbon';

2. Rendezés és korlátozás – „az öt legutóbbi rendelés”:

SELECT id, total, placed_at
FROM orders
ORDER BY placed_at DESC
LIMIT 5;

3. Táblák összekapcsolása – „minden rendelés az ügyfél nevével”:

SELECT o.id, c.name, o.total
FROM orders o
JOIN customers c ON c.id = o.customer_id;

4. Összegzés – „ügyfelenként összesen elköltött összeg”:

SELECT c.name, SUM(o.total) AS total_spent
FROM customers c
JOIN orders o ON o.customer_id = c.id
GROUP BY c.name
ORDER BY total_spent DESC;

A példaadatokkal ez Lena Ortiz 67.00-s, Sam Patel pedig 18.50-es összeget ad vissza.

5. Adatok módosítása:

INSERT INTO customers (name, email, city)
VALUES ('Ana Silva', 'ana@example.com', 'Porto');

UPDATE customers SET city = 'Porto' WHERE id = 1;

DELETE FROM orders WHERE id = 102;

Ezek szinte minden alkalmazás négy alapművelete – létrehozás, olvasás, módosítás és törlés –, amelyet CRUD néven ismerünk.

Egy figyelmeztetés: az UPDATE customers SET city = 'Porto'; WHERE feltétel nélkül minden ügyfél városát megváltoztatja. Mindig ellenőrizd a WHERE részt, mielőtt egy módosítást futtatsz.

A SQL fő elemei

ParancsMit csinál
SELECTAdatok olvasása
INSERTÚj sorok hozzáadása
UPDATEMeglévő sorok módosítása
DELETESorok eltávolítása
CREATE TABLE / ALTER TABLETábla szerkezetének létrehozása vagy módosítása
WHERESzűri, mely sorokat érinti a művelet
JOINKapcsolódó táblák összekapcsolása
GROUP BYSorok csoportosítása összegzéshez, COUNT, SUM, AVG függvényekkel
ORDER BY / LIMITAz eredmények rendezése és korlátozása

A SQL szabványosított, de minden adatbázis hozzáad saját kiegészítéseket, amelyeket dialektusnak nevezünk. A Postgres, a MySQL és a SQLite mind érti a fenti példákat, bár az olyan részletek, mint a dátumfüggvények, kissé eltérnek.

Kulcsfogalmak

FogalomJelentés
Lekérdezés (query)Egy SQL-utasítás, különösen az, amely adatot olvas.
Tábla / sor / oszlopEgyfajta dolog / egy rekord / egy tulajdonság.
Elsődleges kulcs (primary key)Az az oszlop, amely minden sort egyedileg azonosít, általában az id.
Idegen kulcs (foreign key)Egy másik tábla sorára mutató oszlop, például customer_id.
IndexKeresési szerkezet, amely jelentősen felgyorsítja egy oszlop keresését.
Séma (schema)Az összes tábla és oszlop szerkezete.
TranzakcióVáltoztatások csoportja, amelyek együtt sikerülnek vagy együtt buknak el.
SQL-injekcióTámadás, amelyben a felhasználói bemenetet lekérdezésbe csempészik. Paraméterezett lekérdezésekkel előzhető meg.

Gyakori tévhitek

  • „A SQL egy adatbázis.” A SQL a nyelv; a Postgres, a MySQL és a SQLite olyan adatbázisok, amelyek beszélik.
  • „A SQL régi, tehát elavult.” Érett, nem elavult. A modern adatbázisok és adateszközök ma is használják, az újabbak pedig gyakran hozzáadják a SQL-támogatást.
  • „Csak a fejlesztők használhatják a SQL-t.” Elemzők, marketingesek és alapítók is használnak egyszerű lekérdezéseket naponta.
  • „A SQL nem bírja a rugalmas adatokat.” Sok SQL-adatbázis JSON-t is tárol. A Postgresnek például van jsonb típusa. Lásd: SQL vs NoSQL.
  • „Az is jó, ha az AI bármilyen SQL-t futtat az éles adatbázison.” Az olvasás kis kockázatú; az élő adatokon végzett módosítások és törlések biztonsági mentést és második ellenőrzést érdemelnek. Lásd: hogyan készíts biztonsági mentést az alkalmazásod adatbázisáról.

Mit kérj az AI-építődtől

  • „Mutasd meg az adatbázisomban lévő táblákat, és hogy az egyes oszlopok mit jelentenek.”
  • „Írj egy csak olvasó lekérdezést: hány új regisztráció érkezett naponta az elmúlt 30 napban?”
  • „Mielőtt bármilyen UPDATE vagy DELETE futna, mutasd meg a lekérdezést, és hány sort érint.”
  • „Adj indexeket azokra az oszlopokra, amelyek szerint a leggyakrabban szűrünk és rendezünk.”
  • „Győződj meg róla, hogy minden felhasználói bemenetet használó lekérdezés paraméterezett.”
  • „A rendelés- és fizetési frissítéseket csomagold tranzakcióba, hogy ne maradhassanak félig sikerült állapotban.”

SQL a Mythexben

Ha az alkalmazásodnak adatokat kell tárolnia, a Mythex egy dedikált Postgres adatbázist ad a projekthez – kérd a csevegésben, például „mentsd a várólista e-mail-címeit adatbázisba”, vagy használd a /database parancsot (Adatbázis). Az ügynök létrehozza a táblákat és megírja a lekérdezéseket, az Ask módban pedig bármelyik lekérdezést közérthetően is elmagyarázhatja neked. Az adatbázisról magáról bővebben a mi az a Postgres útmutatóban olvashatsz.

Kérdések

Mi a SQL egyszerűen fogalmazva?

A SQL (Structured Query Language, strukturált lekérdező nyelv) a relációs adatbázisokkal való munka szabványos nyelve. Ezzel kérdezel rá az adataidra, például hogy „mely rendelések érkeztek ezen a héten”, és ezzel adhatsz hozzá, módosíthatsz vagy törölhetsz rekordokat.

Hogyan ejtjük ki a SQL-t?

Mind az „esz-kú-el” (a betűk külön kimondva), mind a „szekvel” kiejtés elterjedt és helyes. A nyelv eredeti neve SEQUEL volt, innen ered a második kiejtés.

A SQL programozási nyelv?

A SQL adatkezelésre tervezett lekérdező nyelv. Leírod, milyen eredményt szeretnél, az adatbázis pedig kitalálja, hogyan kapja meg. Önmagában nem használják egész alkalmazások építésére, de szinte minden olyan alkalmazás része, amely relációs adatbázist használ.

Nehéz megtanulni a SQL-t?

Az alapok könnyen elsajátíthatók: a SELECT, WHERE, ORDER BY, INSERT, UPDATE és DELETE szinte minden mindennapi igényt lefednek, és majdnem angolul olvasva is érthetők. Az összekapcsolások (join), csoportosítások és a teljesítményhangolás tovább tart elsajátítani.

Kell ismernem a SQL-t, hogy AI-val építsek alkalmazást?

Nem. Az AI-építő megírja helyetted a SQL-t vagy az adatbázis-kódot. Ha valamennyit tudsz róla, az segít ellenőrizni az adataidat, jobb riportokat kérni, és még azelőtt észrevenni a kockázatos változtatásokat, hogy megtörténnének.

Mythex · Pricing · Építs bármit AI-val · Weboldal- és alkalmazássablonok · A Mythex összehasonlítva · AI-alapú alkalmazásépítési szószedet · Ingyenes eszközök AI-alapú alkalmazásépítéshez · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)