Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ІС модуль.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
80.64 Кб
Скачать

21 Команди sql для створення та знищення індексів. Приклади використання.

Команди INSERT і DELETE.

Синтаксис команди:

CREATE INDEX <INDEX NAME>

ON <TABLE NAME>

(<COLUMN NAME> [,<COLUMN NAME>]…)

Приклад в таблиці STUDENTS індекс по полю, що містить прізвище студента:

CREAT INDEX FAMIDX ON STUDENTS (FAM).

Для створення унікальних індексів використовують ключове слово UNIQUE в команді CREATE INDEX.

Створити його можна командою:

CREATE UNIQUE INDEX

NUMIDX ON STUDENTS (NUM)

Команда видалення має наступний синтаксиc

DROP INDEX <INDEX NAME>. Для видалення створеного індексу по прізвищу студента, є команда:

DROP INDEX FAMIDX

23. Вибірка (зчитування) даних засобами sql

Запит є командою, яка звертається до БД і повідомляє її, щоб вона відобразила певну інформацію з таблиць в пам’ять. Всі запити в SQL складаються з одиночної команди SELECT з достатньо простою структурою, проте шляхом її використання можна виконати складну обробку даних. У найпростішій формі, команда SELECT просто звертається до БД, щоб отримати інформацію з таблиці. Н-д, можна вивести таблицю студентів, давши наступний запит:

SELECT NUM, FAM, NAME, STAT, DATA, TEL, STIP

FROM STUDENTS;

SELECT – ключове слово, яке повідомляє БД, що ця команда є запитом, тобто всі запити починаються цим словом.

NUM, FAM, NAME, STAT, DATA, TEL, STIP – список полів з таблиці, які вибираються запитом. Не перераховані поля не будуть включені у виведення команди, але це не означає, що вони будуть видалені або інформація в них буде стерта з таблиць.

FROM STUDENTS – ключове слово FROM, подібно SELECT, яке повинне бути представлене в кожному запиті. Воно супроводжується пропуском і потім ім’ям таблиці, яке використовується як джерело інформації.

(;) – викор. у всіх інтерактивних командах SQL для повідомлення БД, що команда заповнена і готова виконатися, а в деяких с-мах похила риска (\) в рядку є індикатором кінця команди.

Якщо необхідно отримати кожне поле таблиці існує необов’язкове скорочення у вигляді символу «зірочка» (*); яке можна використовувати для виведення повного списку полів, Н-д:

SELECT * FROM STUDENTS;

Команда SELECT здатна витягувати строго певну інформацію з таблиці. Н-д, при необхідності виведення тільки певних полів таблиці, просто із списку виключаються не потрібні поля. Н-д:

SELECT NUM, FAM, STIP

FROM STUDENTS;

25. Отримання підсумкових даних

Взагалі кажучи, запити можуть проводити узагальнену групову обробку значень полів, що реалізується за допом. агрегатних ф-цій. Агрегатні ф-ції створюють одиночне значення для всієї групи таблиці. У SQL допускаються наступні агрегатні ф-ції:

COUNT – виконує підрахунок к-сті рядків або не-NULL значень полів, які вибрав запит;

SUM – розраховує арифм. суму всіх вибраних зна­чень даного поля;

AVG – здійснює усереднювання всіх вибраних значень да­ного поля;

  • МАХ – знаходить і повертає найбільше зі всіх вибраних значень даного поля;

  • MIN – знаходить і повертає найменше зі всіх вибраних зна­чень даного поля.

Агрегатні ф-ції викор. подібно до імен полів в реченні SELECT запиту, але з урахуванням того, що вони бе­руть імена полів як аргументи. Варто мати на увазі, що з SUM і AVG викор. тільки числові поля, а з COUNT, МАХ, і MIN можуть викор. числові або символьні поля.

Н-д, щоб знайти суму всієї виплаченої стипендії в таблиці з даними про студентів, можна викор. на­ступний запит:

SELECT SUM (STIP) FROM STUDENTS;

Ф-ція COUNT відрізн. від останніх – вона рахує к-сть значень в даному стовпці, або число рядків в таблиці. Для того, щоб підрахувати заг. к-сть рядків в таблиці, викор. ф-цію COUNT із зірочкою замість імені поля. Н-д:

SELECT COUNT FROM STUDENTS;

Для підрахунку кількості значень у стовпці ф-ція COUNT використовується разом з DISTINCT, Н-д:

COUNT(DISTINCT NUM) FROM USP;

Для того, щоб підрахувати середній бал успішності сту­дентів з алгебри можна скористатися такою конструкцію:

SELECT AVG(ALG) FROM USP;

У SQL допускається використовувати агрегатні ф-ції з аргументами, які складаються з виразів. Припустимо, що необ­хідно знайти макс. величину проіндексованої (у при­кладі, збільшеною удвічі) стипендії. Для кожного рядка табли­ці такий запит повинен умножати STIP на 2 і вибирати найбіль­ше значення, яке буде знайдено. Для цього можна скористатися наступним запитом:

Select Max (Stip*2)From students