Команда SQL SELECT
SQL (мова структурованих запитів) є мовою програмування 4-го покоління та Мова для налаштування, управління та запиту реляційних баз даних. Він був розроблений IBM в рамках дослідницького проекту та стандартизований на міжнародному рівні в 1987 році. (Майже) всі системи баз даних працюють з цією мовою.

Класифікація функцій SQL
Команди SQL поділяються на три класи:
DDL - Мова визначення даних
Команди для визначення таблиць та інших структур даних
DCL - мова контролю даних
Команди для управління правами доступу
DML - мова керування даними
Команди обробки даних та запитів даних
| чудово | DDL | DCL | DML |
| Приклади | Створення бази даних СТВОРИТИ БАЗУ ДАНИХ | Надання прав доступу НАДАННЯ | Таблиця запитів ВИБЕРІТЬ |
| Створити таблицю СТВОРИТИ ТАБЛИЦЮ | Відкликати права доступу ЗВІДМОВИТИ | Видалити рядок таблиці ВИДАЛИТИ | |
| Змінити структуру таблиці ЗМІНИТЬ СТОЛ | Вставити рядок таблиці ВСТАВИТИ | ||
| Видалити таблицю ТАБЛИЦЯ КРАПЛЕННЯ | Змінити дані таблиці ОНОВЛЕННЯ | ||
| Перейменувати таблицю ПЕРЕЗНАЧИТИ | |||
| Створіть віртуальну таблицю СТВОРИТИ ПЕРЕГЛЯД |
Команда DML SELECT
Запит SQL виконується за допомогою команди SELECT із зазначенням до шести компонентів. Загальний синтаксис має вигляд:
ВИБЕРІТЬ [ВСЕ | ВИЗНАЧЕННЯ]
ВІД таблиці [псевдонім] [таблиця [псевдонім]] .
[ДЕ]
[ГРУПУВАТИ за розділенням [МАЄ]]
[ЗАМОВИТИ ЗА Стовпцями [ASC | DESC]. ];
Складний синтаксис можна зрозуміти так:
| застереження | Пояснення |
| ВИБЕРІТЬ [ВИЗНАЧЕННЯ] | Вибирайте значення зі стовпців [кілька записів лише один раз]. |
| ВІД | . назовні стіл або столи . |
| ДЕ | . в якій умова (и) повинні бути виконані . |
| ГРУПА ЗА | . і групи вихід усіх рядків з однаковим значенням атрибута в один . |
| МАЮЧИ | . перебуваючи в ньому повинні/повинні застосовуватися наступні додаткові умови . |
| ЗАМОВИТИ [ASC/DESC] | . та сортувати за стовпцями [за зростанням або за спаданням]. |
Команди SQL мають довжину до 256 символів і повинні закінчуватися крапкою з комою. Ідентифікатори атрибутів, які містять пробіли або розділові знаки, слід розміщувати в квадратних дужках.
Виділення в SQL
Зі столу Студент слід вибрати всі рядки, що містять назву "Мюллер".
Вибір має вигляд: SName = 'Mьller' (студент)
Перетворення в SQL: SELECT * FROM student WHERE Name = 'Mueller';
Тому пропозиція WHERE забезпечує вибір. Щоб показати, що всі стовпці повинні відображатися у вихідній таблиці, використовується джокер - символ відсотка або, у MS-ACCEES, символ зірки.
Тепер ви хочете зі столу Студент слід вибрати всі рядки, що містять назву "Mьller" і чиє ім'я починається на "O".
Вибір має такий вигляд: SName = 'Mьller' І ім'я починається на 'O' (студент)
Реалізація в SQL: SELECT * FROM učeник WHERE name = 'Müller' І ім'я ЯК ТАК 'O%';
Умови можна використовувати з І, АБО і НЕ посилання. Символ зірки виглядає як заповнювач для будь-якої послідовності символів. Якщо потрібно приховати один символ, знак питання використовується як підстановочний знак. ПОДІБНО ДО вживається у значенні "ТАК ЯК".
| оператора | Пояснення |
| = => <> | порівнює значення атрибута з іншим або константою Рівність, менша, менша або рівна, більша або рівна, більша за нерівність |
| МІЖ. І . | порівнює, чи знаходиться значення атрибуту між двома межами |
| В (...) | порівнює, чи є значення атрибута елементом набору |
| ПОДІБНО ДО | порівняння рядків за допомогою операторів подібності з розрізненням між великими та малими літерами: %: Заповнювач для будь-яких символів (у MS Access: *) _: Заповнювач символу (у MS-Access:?) |
| Є (НЕ) НУЛЬНИМ | Перевіряє, чи не визначено значення атрибута (не) |
Проекція в SQL
Зі столу Студент всі стовпці з атрибутом "Ім'я" слід проектувати.
Проекція має вигляд: PName (студент)
Реалізацією в SQL є: SELECT Name FROM student;
На відміну від проекції відповідно до реляційної алгебри, SQL показує всі множинні записи. Щоб запобігти цьому, до команди SELECT потрібно додати атрибут DISTINCT.
Реалізація в SQL така: ВИБЕРІТЬ ВИЗНАЧЕНО ІМЯ ВІД студента;
Таким чином, пропозиція SELECT забезпечує проекцію.
Виконання проекції та виділення одне за одним
Зі столу Студент мають відображатись імена всіх студентів, яких прізвище Мюллер.
Запит має вигляд: PVorname (SName = 'Mьller' (student))
Реалізація в SQL така: ВИБЕРІТЬ ім’я ІЗ учня ДЕ ім’я = 'Мюллер';
Обробка команди SQL завжди здійснюється зсередини, тобто H. спочатку виділення, потім проекція.
Приєднуйтесь до SQL
З таблиць для студентів та курсів слід створити таблицю. Загальним атрибутом є SNr.
Реалізація в SQL:
ВИБРАТИ *
ВІД ВНУТРІШНЬИХ ПРИЄДНАЙТЕСЯ до курсів НА студентів.но = курси.но
ЗАМОВИТИ за курсами. Пропущені уроки DESC;
Результат - a ВНУТРІШНЄ З'ЄДНАННЯ, Отримана таблиця сортується у порядку зменшення відповідно до відсутніх годин. Такий результат я. d. Зазвичай не бажають. Часто достатньо лише декількох стовпців композиту - ПРИРОДНЕ ПРИЄДНАННЯ.