- •29. Типи даних мови sql
- •30. Прості вибірки даних. Основні sql-вирази для вибірки даних.
- •Обчислення в sql.
- •Использование итоговых функций
- •Складні запити. Теоретико-множинні операції: декартовий добток, обєднання наборів записів, перелік, віднімання наборів запитів.
- •Операції об’єднання.
- •Рекурсивні запити.
- •Добавлення, видалення та зміна даних в таблицях.
- •Створення та модифікація таблиць. Створення і модифікація таблиць у режимі Конструктор.
- •Создание таблиц в бд MySql
- •Управління правами доступу. Операторы управления правами доступа.
- •Изменение прав доступа к объектам базы данных
- •Компонент tDataSource
- •Компонент tTable
- •Компонент tField
- •Компонент tdbGrid
- •Компонент Query: загальні відомості, динамічні запити і параметри Query.
- •Параметры Query.
- •Основные свойства Query.
- •Основные методы компонента Query.
- •Основні властивості Query, зв’язування таблиць.
- •Кешування змін, сумісне застосування Query і UpdateSql.
- •Робота з бд в мережі.
- •Режимы работы с базой данных в сети
Обчислення в sql.
Обчислення полів у функціях SQL
Аргумент рядковий вираз можна використовувати в агрегатній функції SQL для обчислення значень у полі. Зокрема, можна обчислити відсоток (наприклад, додаткову сплату або податок із продажу), помноживши значення поля на дріб.
У таблиці наводяться зразки обчислень полів таблиць «Замовлення» та «Відомості про замовлення» у базі даних Northwind.mdb.
Обчислення |
Приклад |
Додавання числа до поля |
Вантаж + 5 |
Віднімання числа від поля |
Вантаж - 5 |
Множення поля на число |
Ціна за одиницю * 2 |
Ділення поля на число |
Вантаж / 2 |
Додавання одного поля до іншого |
Кількість одиниць у наявності + Кількість замовлених одиниць |
Віднімання одного поля від іншого |
Рівень повторного замовлення - Кількість одиниць у наявності |
У наведеному нижче прикладі обчислюється середня сума знижки для всіх замовлень у базі даних Northwind.mdb. Значення поля «Ціна за одиницю» помножується на значення поля «Знижка», щоб визначити суму знижки для кожного замовлення, відтак обчислюється середнє значення. Цей вираз можна використати в операторі SQL у коді Visual Basic:
SELECT Avg(Ціна_за_одиницю * Знижка) AS [Середня сума] FROM [Відомості про замовлення];
Использование итоговых функций
С помощью итоговых (агрегатных) функций в рамках SQL-запроса можно получить ряд обобщающих статистических сведений о множестве отобранных значений выходного набора.
Пользователю доступны следующие основные итоговые функции:
Count (Выражение) - определяет количество записей в выходном наборе SQL-запроса;
Min/Max (Выражение) - определяют наименьшее и наибольшее из множества значений в некотором поле запроса;
Avg (Выражение) - эта функция позволяет рассчитать среднее значение множества значений, хранящихся в определенном поле отобранных запросом записей. Оно является арифметическим средним значением, т.е. суммой значений, деленной на их количество.
Sum (Выражение) - вычисляет сумму множества значений, содержащихся в определенном поле отобранных запросом записей.
Чаще всего в качестве выражения выступают имена столбцов. Выражение может вычисляться и по значениям нескольких таблиц.
Складні запити. Теоретико-множинні операції: декартовий добток, обєднання наборів записів, перелік, віднімання наборів запитів.
До складу теоретико-множинних операцій входять операції:
· об¢єднання відношень;
· перетин відношень;
· взяття різниці відношень;
· Декартовий добуток відношень.
При
виконанні операції об’єднання двох
відношень R1
R2
одержується відношення, що
містять всі кортежі, що
входять хоча б в одне з відношень-операндів.
Операція
перетину двох відношень R1
R2
дозволяє одержати відношення, що включає
всі кортежі, які входять до обох
відношень-операндів.
Відношення, що є різницею двох відношень R1\R2, включає всі кортежі, що входять у відношення - перший операнд; такі, що жоден з них не входить у відношення, яке є другим операндом. Результат операцій: відношення.
Декартів
добуток.:R1
R2
– визначається для будь-яких реляцій.
Ця операція може різко збільшити об’єм
результату. При виконанні
прямого добутку двох відношень отримується
відношення, кортежі якого є конкатенацією
(зчепленням) кортежів першого і другого
операндів;
Кортеж, що відповідає даній схемі відношення, - це множина пар {назва атрибута, значення}, яке містить одне входження кожної назви атрибута, що належить схемі відношення. «Значення» є припустимим значенням домену цього атрибута (або типу даних, якщо поняття домену не підтримується). Попросту кажучи, кортеж - це набір іменованих значень заданого типу.
Відношення - це множина кортежів, які відповідають одній схемі відношення. Насправді, поняття схеми відношення найближче до поняття структурного типу даних в мовах програмування.
