Історія SQL починається з 70-х років XX століття, коли в дослідницькій лабораторії IBM у штаті Каліфорнія було розроблено першу версію цієї мови. Назва SQL є абревіатурою від Structured Query Language (структурована мова запитів), й іноді її вимовляють як «sequel» (первісна назва). Спочатку ця мова була реалізована в реляційній СКБД DB2 виробництва IBM. На відміну від мов третього покоління (COBOL, C), які з'явилися в той самий час, мова SQL не є процедурною. Непроцедурна мова — це мова, в якій описується, що потрібно одержати, а не як це зробити.
Особливість реляційних СКБД полягає у тому, що вони надають множинно-орієнтовану мову маніпулювання базами даних, тобто результатом дії мовного оператора є таблиця, яка містить множину даних. Більшість сучасних реляційних СКБД використовують саме мову SQL.
Американський інститут національних стандартів (American National Standards Institute — ANSI) та Міжнародна організація стандартів (International Standards Organization — ISO) займаються описом і підтримкою стандартів цієї мови. Усі сучасні СКБД підтримують певний стандарт, проте є й відхилення, які в кожному конкретному випадку специфікуються в документації програмного продукту. Окрім того, у багатьох системах розроблено розширення SQL, що дають змогу використовувати мову запитів у середовищі програмування.
SQL надає такі можливості:
♦ створювати й видаляти таблиці бази даних, а також змінювати заголовки таблиць;
♦ вставляти, змінювати й видаляти рядки в таблицях;
♦ виконувати пошук даних у багатьох таблицях та впорядковувати результати цього пошуку;
♦ описувати процедури підтримки цілісності;
♦ визначати та змінювати інформацію про захист даних.
Керуючись стандартами ANSI-92 та ANSI-99, розглянемо можливості SQL на численних прикладах. Усі запити конструюватимуться для тієї ж бази даних, що була використана під час розгляду реляційної алгебри та реляційного числення: