- •Мова sql
- •Компоненти sql
- •Insert Використовується для пакетного завантаження в базу
- •Пропозиції sql
- •Операції sql
- •Приклади запитів
- •Пропозиція order by (сортування результатів)
- •Застосування агрегатних функцій в інструкції select
- •15. Знайти максимальну і мінімальну кількість проданих товарів за одну покупку.
- •Пропозиція group by
- •Пропозиція having
- •18. Вибрати тих клієнтів загальна кількість покупок яких більше 20.
- •Пропозиція parameters (використання параметрів в запитах)
- •Вибірка даних з декількох таблиць
- •Пропозиція inner join (внутрішнє з'єднання)
- •Підпорядковані запити
- •Інструкція insert into
- •Інструкція select...Into
- •Інструкція update
- •Інструкція delete
- •Інструкція alter table
- •Інструкція create index
- •Інструкція drop
Операції sql
Операції мови SQL, вживані для завдання умови, можна розділити на:
1. Операції порівняння дозволяють порівняти значення двох виразів. Ці операції перераховані нижче:
< Менше
> Більше
= Дорівнює
<> Не дорівнює
<= Менше або рівно
>= Більше або рівно
Логічні операції:
BETWEEN.AND Визначає приналежність значення виразу вказаному
діапазону
LIKE Використовується для завдання шаблону
IN Перевіряє, чи співпадає значення виразу з одним з елементів
вказаного списку
IS NULL Порівняння з невизначеним значенням
EXISTS Відбір записів, відповідних заданому критерію
ALL Порівняння початкового значення зі всіма іншими, що
входять в деякий набір даних
ANY Порівняння заданого значення з кожним із значень деякого
набору даних
Операції об'єднання
AND Об'єднання декількох умов шляхом операції логічного множення
OR Об'єднання декількох умов шляхом операції логічного додавання
Операція заперечення
NOT
Агрегатні функції
Агрегатні (статистичні) функції використовуються усередині пропозиції SELECT для груп записів, повертаючи єдине значення, що відображає деяку узагальнювальну характеристику групи записів. Агрегатні функції приведені в таблиці:
Агрегатна функція Опис
AVG Повертає середнє значення окремого поля
COUNT Повертає кількість записів в таблиці
SUM Повертає суму значень окремого поля
MAX Повертає найбільше значення в специфікованому полі
MIN Повертає найменше значення в специфікованому полі
Інструкції DML
Інструкції підмножини SQL - мови маніпулювання даними ( DML ) використовують для відбору записів в таблицях, модифікації, додавання або видалення записів. Для виконання цих завдань підтримується ряд різних інструкцій, проте більшість з них представляє частину загальної структури запиту SELECT.
Запит на вибірку
Інструкція SELECT (запит на вибірку ) призначена для отримання записів з бази даних у вигляді набору записів із збереженням його в новому об'єкті RECORDSET. У додатку можна потім маніпулювати цим набором записів - виводити записи на екран у формі, додавати, змінювати і/або видаляти їх, а також створювати звіти.
SELECT - найчастіше перше слово в інструкції SQL. Більшість інструкцій SQL є запитами SELECT або SELECT INTO. Запити SELECT не змінюють дані в базі даних - вони тільки відбирають дані.
Синтаксис інструкції SELECT має наступний вигляд:
SELECT [ALL| DISTINCT] {*| ім'я поля1 [AS нове ім'я][, ім'я поля2 [AS нове ім'я][…}
FROM ім'я таблиці1[, ім'я таблиці2]
[WHERE умова вибірки або з'єднання]
[GROUP BY Список полів для угрупування]
[HAVING умова відбору для групи]
[ORDER BY Список полів, по яких треба упорядкувати результат [ASC|DESC]]
[WITH OWNERACCESS OPTION];
Ключове слово SELECT повідомляє СУБД, що це команда - запит. Всі запити на вибірку починаються цим словом з подальшим пропуском. За ним може слідувати спосіб вибірки: ключове слово ALL (мається на увазі за умовчанням) означає, що в результуючий набір рядків включаються всі рядки, що задовольняють умовам запиту. Означає, в результуючий набір можуть потрапити однакові рядки. І це порушення принципів теорії відносин ( на відміну від реляційної алгебри, де за умовчанням передбачається відсутність дублікатів в кожному результуючому відношенні). Ключове слово DISTINCT означає, що в результуючий набір рядків включаються тільки різні рядки, тобто дублікати рядків не включаються в набір. Список полів є іменами стовпців, значення з яких необхідно вибрати. Символ * (зірочка) означає, що в результуючий набір включаються всі стовпці з початкових таблиць запиту.
Інструкція SELECT завжди містить пропозицію FROM, вказуючу таблицю або декілька таблиць, з яких відбираються записи. Якщо в список вибраних полів потрібно включити поля, наявні більш ніж одній з таблиць пропозиції, ці поля потрібно специфікувати ім'ям таблиці з оператором . (крапка). У випадку якщо вказано більше одного імені таблиці, неявно мається на увазі, що над перерахованими таблицями здійснюється операція декартова добутку.
Все подальші пропозиції інструкції є необов'язковими.
Пропозиція WHERE визначає, які записи з таблиць, перерахованих в пропозиції FROM повинні бути включені в результат інструкції SELECT. Якщо пропозиція WHERE не специфікується, запит повертає всі рядки з таблиць. Коли інструкцією SELECT створюється об'єкт RECORDSET, імена стовпців таблиці стають іменами об'єкту FIELD в RECORDSET. Пропозицією AS можна встановити для стовпців альтернативні (можливо більш описові або економні) імена.
