Що таке SQL? Повний посібник з форм та основ

⚡ Розумний підсумок

Що таке SQL? Структурована мова запитів – це стандартна мова для роботи з реляційними базами даних. Вона дозволяє створювати схеми, запитувати записи, оновлювати рядки, керувати дозволами та підключати сучасні програми до таких механізмів, як PostgreSQL, MySQLта SQL Server.

  • 📘 Визначення: SQL розшифровується як Structured Query Language (структурована мова запитів), стандарт ANSI та ISO, який використовується для визначення, запитів та керування даними всередині реляційної бази даних.
  • 🧩 Типи заяв: Команди груп DDL, DML, DCL, TCL та DQL, такі як CREATE, INSERT, UPDATE, DELETE, SELECT та DROP.
  • 🏛️ Стандарт: ANSI SQL:2023 додав вбудовану підтримку JSON та PostgreSQL-стиль стандартних запитів до графів властивостей (SQL/PGQ).
  • Двигуни: PostgreSQL 17, MySQL 8, Oracle 23ai та SQL Server 2022 реалізують значну частину сучасного стандарту SQL.
  • 🆚 SQL проти NoSQL: SQL забезпечує дотримання схем, об'єднань та транзакцій ACID, тоді як NoSQL жертвує суворою структурою заради горизонтального масштабування та гнучких документів.
  • 🤖 Кут штучного інтелекту: Помічники з перетворення тексту в SQL, такі як GitHub Copilot та Vanna AI, тепер перетворюють запитання простою англійською мовою на виконувані SQL-запити.

Що таке SQL?

Що таке SQL?

SQL є стандартною мовою для роботи з реляційними базами даних. Вона використовується для вставки, пошуку, оновлення та видалення записів, а також може оптимізувати та підтримувати бази даних. SQL є стандартом ANSI та ISO, тому той самий основний синтаксис працює в таких двигунах, як PostgreSQL, MySQL, Oracleта SQL Server.

Повна форма SQL

SQL розшифровується як Мова Структурованих Запитів, вимовляється як «SQL» або «See-Quel». IBM розробив його в 1970-х роках, а також реляційні бази даних, такі як MySQL, Oracle Database, Microsoft SQL Server, PostgreSQL та SAP Sybase використовує ANSI SQL як основу.

Як використовувати SQL

Ви виконуєте SQL-запит, пишучи інструкцію, яка називає операцію, цільову таблицю та будь-які умови фільтра. Запит SELECT, що повертає елементи старше 30, виглядає так:

SELECT * FROM Members WHERE Age > 30;

Синтаксис у базах даних значною мірою схожий, оскільки кожен основний рушій реалізує стандарт ANSI. Деякі продукти RDBMS додають власні діалекти, наприклад, T-SQL у SQL Server та PL/SQL у Oracle.

Натисніть тут якщо відео недоступне

Для чого використовується SQL?

Ось важливі причини використання SQL:

  • Це допомагає користувачам отримувати доступ до даних у Система RDBMS.
  • Це допомагає вам описати дані.
  • Це дозволяє визначати дані в базі даних і маніпулювати цими даними.
  • За допомогою SQL ви можете створювати та видаляти бази даних і таблиці.
  • SQL дозволяє використовувати функції в базі даних, створювати представлення та писати збережені процедури.
  • Ви можете встановити дозволи на таблиці, процедури та подання.
  • SQL підтримує аналітичні завдання, такі як звітність, бізнес-аналітика та передача даних до конвеєрів машинного навчання.

Коротка історія SQL

Ось важливі віхи з історії SQL:

  • 1970 – доктор Едгар Ф. «Тед» Кодд описав реляційну модель для баз даних.
  • 1974 – З'явилася структурована мова запитів IBM Дослідження.
  • 1978 - IBM випущено System/R.
  • 1986 – ANSI стандартизував SQL як SQL-86.
  • 1989 – Опубліковано першу комерційну версію стандарту SQL.
  • 1999 – SQL:1999 додав тригери та об'єктно-орієнтовані функції.
  • SQL:2003 – Віконні функції та можливості XML.
  • SQL:2006 – Підтримка мови запитів XML.
  • SQL:2011 – Підтримка тимчасових баз даних.
  • SQL:2016 – JSON, розпізнавання шаблонів рядків, поліморфні табличні функції.
  • SQL:2023 – Запити до графів властивостей (SQL/PGQ) та точніша обробка JSON.

Типи операторів SQL

Ось п'ять типів широко використовуваних SQL-інструкцій:

  • Мова визначення даних (DDL)
  • Мова маніпулювання даними (DML)
  • Мова керування даними (DCL)
  • Мова керування транзакціями (TCL)
  • Мова запитів даних (DQL)

Список команд SQL

Ось список деяких з найбільш часто використовуваних Команди SQL:

  • CREATE – визначає структуру або схему бази даних.
  • INSERT – вставляє дані в рядки таблиці.
  • ОНОВЛЕННЯ – оновлює існуючі дані в базі даних.
  • DELETE – видаляє один або декілька рядків з таблиці.
  • ВИБІР – вибирає атрибути, що відповідають умові, описаній у реченні WHERE.
  • DROP – видаляє таблиці та бази даних.
  • ВЕЛИКИЙ – виконує INSERT або UPDATE в одному операторі на основі умови збігу.

Процес SQL

Коли ви виконуєте команду SQL, механізм баз даних аналізує оператор, вибирає план виконання та запускає його на рівні сховища.

Важливими компонентами в цьому процесі є:

  • Механізм запитів SQL
  • Двигун оптимізації
  • Диспетчер запитів
  • Класична система запитів

Класичний механізм запитів обробляє запити, відмінні від SQL, тоді як механізм запитів SQL обробляє структуроване робоче навантаження.

Процес SQL
Процес SQL

Стандарти SQL

SQL охоплює створення, видалення, вибірку та зміну рядків бази даних, а також керування доступом. Це стандарт ANSI (Американського національного інституту стандартів) та ISO, а поточна редакція... ISO / IEC 9075: 2023, який зазвичай називають SQL:2023. Стандарт поділено на кілька частин:

Частина Опис
Частина 1 – SQL/Framework Пропонує логічні концепції, що лежать в основі кожної іншої частини.
Частина 2 – SQL/Foundation Визначає центральний синтаксис та семантику SQL.
Частина 3 – SQL/CLI Визначає інтерфейс рівня викликів, який використовується ODBC та подібними драйверами.
Частина 4 – Постійні збережені модулі Збережені підпрограми, зовнішні підпрограми та розширення процедурної мови для SQL.
Частина 9 – Керування зовнішніми даними Додає синтаксис та визначення, які дозволяють SQL отримувати доступ до джерел даних, відмінних від SQL, таких як файли.
Частина 10 – Прив’язки до мови об’єктів Визначає синтаксис та семантику вбудовування SQL у Java.
Частина 11 – SQL/схема Інформаційні та визначені схеми.
Частина 13 – SQL/JRT SQL-підпрограми та типи, що використовують Java мова програмування
Частина 14 – SQL/XML SQL та XML, включаючи інтеграцію XMLTYPE та XQuery.
Частина 15 – SQL/MDA Забезпечує підтримку SQL для багатовимірних масивів.
Частина 16 – SQL/PGQ Додано в SQL:2023 для визначення запитів графів властивостей поверх реляційних таблиць.

Сучасні SQL-рушії

Кожен двигун реалізує більшу частину ядра ANSI та додає власні розширення:

  • PostgreSQL 17: Відкритий код зі суворим дотриманням стандартів та розширеною підтримкою JSON.
  • MySQL 8: Популярний у веб-додатках; підтримує віконні функції, CTE та режим сховища документів.
  • Microsoft SQL Server 2022: Корпоративний рушій із аналітикою запитів та Azure Дзеркальне відображення синапсів.
  • Oracle Database 23ai: Поєднує SQL з векторним пошуком та JSON-реляційними дуальними представленнями.
  • SQLite: Легкий файловий движок, вбудований у мобільні додатки та браузери.

Хмарні сховища, такі як Amazon червоне зміщення, Google BigQuery та Snowflake також використовують діалекти ANSI SQL, що робить мову портативною з ноутбука для аналітики петабайтного масштабу.

Елементи мови SQL

Ось важливі елементи мови SQL:

  • Ключові слова: Зарезервовані слова, такі як SELECT, FROM або WHERE, які будують кожен оператор.
  • Ідентифікатори: Імена об'єктів бази даних, такі як ідентифікатори користувачів, таблиці та стовпці.
  • Струни: Літеральні рядки або вирази з типами даних VARCHAR або CHAR.
  • Вирази: Сформовано з констант, операторів SQL, імен стовпців та підзапитів.
  • Умови пошуку: Фільтрувати рядки або керувати потоком операторів, наприклад, IF.
  • Особливі цінності: Такі значення, як CURRENT_TIMESTAMP, що використовуються у виразах та значеннях стовпців за замовчуванням.
  • Змінні: Більшість механізмів підтримують локальні, глобальні змінні та змінні рівня підключення у збережених процедурах.
  • Коментарі: Однорядкові (–) та блокові (/* */) коментарі документують SQL, але не виконуються.
  • NULL значення: NULL позначає значення, яке невідоме, відсутнє або не застосовується.

Що таке база даних у SQL?

A база даних — це набір таблиць, які зберігають структуровані дані. Таблиця містить рядки (записи або кортежі) та стовпці (атрибути).

Кожен стовпець зберігає певний тип інформації, наприклад, імена, дати, суми в доларах або числа. Зв'язки між таблицями забезпечуються за допомогою первинних та зовнішніх ключів, що робить базу даних «реляційною».

Що таке NoSQL?

NoSQL є категорією Системи управління базами даних головною рисою яких є недотримання реляційних концепцій. NoSQL означає «Не тільки SQL». Категорія зросла разом з такими інтернет-гігантами, як Google, Facebook та Amazon, які мають справу з гігантськими обсягами даних.

Коли реляційні бази даних обробляють величезні обсяги, час відгуку може сповільнитися. Ви можете «масштабувати» базу даних, оновивши обладнання, або «масштабувати назовні», розподіливши навантаження між кількома хостами.

NoSQL бази даних – це нереляційний сховища, розроблені для веб-застосунків. Вони не завжди використовують SQL або застосовують суворі схеми, а ACID (Atomвластивості (наприклад, міцність, узгодженість, ізоляція, довговічність) не завжди гарантовані, хоча сучасні системи, такі як MongoDB та Cassandra тепер пропонують налаштовувані транзакційні режими.



Чому має сенс вивчати SQL після NoSQL

З огляду на те, що NoSQL масштабується краще, ніж реляційні моделі, ви можете задатися питанням... чому хтось все ще вивчає SQLNoSQL-бази даних є спеціалізованими та найкраще підходять для величезних неструктурованих наборів даних, але більшість бізнес-застосунків все ще покладаються на реляційні бази даних та їхні інструменти.

Реляційні бази даних зберігають такі переваги порівняно з NoSQL:

  • Зріла модель зберігання та управління даними, що є критично важливим для корпоративних користувачів.
  • Підтримка переглядів, що дозволяє користувачам бачити лише авторизовані дані.
  • Підтримка збережених процедур, які переносять бізнес-логіку в базу даних.
  • Посиленіші моделі безпеки, контроль доступу на основі ролей та функції аудиту.
  • SQL – це лінгва франка бізнес-аналітики, інформаційних панелей та інструментів штучного інтелекту, які потребують структурованого введення даних.

Попит на фахівців, які вміють працювати з реляційними базами даних, залишається зростання, тому вивчення основ SQL все ще має очевидну цінність.

SQL та ШІ: Інструменти перетворення тексту в SQL

SQL тепер є цільовою мовою для асистентів зі штучним інтелектом. Перетворення тексту в SQL Інструменти перетворюють прості англійські запитання, такі як «показати 10 найкращих клієнтів за доходом за останній квартал», на виконуваний SQL-файл. Популярні опції включають Копілот GitHub, Ванна ШІ, Microsoft Другий пілот в Azure SQL і Oracle Виберіть ШІ. Завжди перевіряйте згенерований SQL на правильність, безпеку та індексацію, перш ніж запускати його на робочих даних.

Найкращі книги для вивчення SQL

Ось деякі з найкращих книг з SQL:

  • Підручник з SQL для початківців:

    Цей Підручник SQL для початківців PDF-файл охоплює основні концепції баз даних, команди MS-SQL та складні теми, такі як SQL-з'єднання.

  • SQL за 10 хвилин: Повнокольорові приклади коду показують структуру SQL-інструкцій, а також пропонують скорочення та готові рішення. КУПИТИ ЗАРАЗ
  • Кулінарна книга SQL: Такі методи, як обхід рядка за допомогою SQL для розбору символів або розділених елементів. КУПИТИ ЗАРАЗ
  • SQL: The Complete Reference: Охоплює віконні функції, перетворення рядків на стовпці та зворотне перетворення. КУПИТИ ЗАРАЗ
  • Кишеньковий посібник з SQL: Викладає функції SQL, синтаксис регулярних виразів та перетворення типів. КУПИТИ ЗАРАЗ

Більше книг з SQL – Натисніть тут,

Поширені запитання

SQL розшифровується як Structured Query Language (структурована мова запитів). Вимовляється або як три літери «SQL», або як «See-Quel» (сіквел), прізвисько, успадковане від оригіналу. IBM Прототип SEQUEL, розроблений у 1970-х роках.

SQL — це стандартизована мова для запитів до реляційних баз даних. MySQL є однією з багатьох систем керування базами даних, що реалізують SQL. Інші механізми, які також використовують SQL, включають PostgreSQL, Microsoft SQL Server, Oracle Database та SQLite.

Поточний стандарт — ISO/IEC 9075:2023, який зазвичай називають SQL:2023. Він додав Частину 16 SQL/PGQ для запитів графів властивостей та уточнив обробку JSON, спираючись на функції JSON та шаблонів рядків, представлені в SQL:2016.

Так. Інструменти перетворення тексту в SQL, такі як Копілот GitHub, Ванна ШІ та Microsoft Другий пілот в Azure SQL перетворює запити простою англійською мовою на запити. Завжди перевіряйте згенерований SQL на правильність, безпеку та індексацію перед його запуском.

SQL готує навчальні дані: розробка функцій, об'єднання, фільтри та агрегації – все це відбувається у сховищі. Такі механізми, як Oracle 23ai, BigQuery ML та PostgreSQL За допомогою pgvector тепер можна виконувати пошук подібності векторів безпосередньо в SQL для генерації з доповненим пошуком.

Більшість початківців можуть писати основні оператори SELECT, INSERT, UPDATE та DELETE після двох-трьох тижнів цілеспрямованої практики. Досягнення середнього рівня навичок роботи з об'єднаннями, підзапитами, віконними функціями та налаштуванням запитів зазвичай займає кілька місяців регулярної практичної роботи.

Підсумуйте цей пост за допомогою: