- •0927 – "Видавничо-поліграфічна справа" для магістрантів
- •0927 – "Видавничо-поліграфічна справа" для магістрантів
- •1 Вивчення метод і в збору та накопичення даних
- •1.5 Контрольні питання:
- •1.6 Літературні джерела:
- •1 Вивчення метод і в збору та накопичення даних
- •2.5 Контрольні питання:
- •2.6 Літературні джерела:
- •2 Вивчення методів пошуку та опрацювання даних
- •Завдання1. Пригадати синтаксис оператора select для вибірки даних.
- •Завдання 3. Створити вибірку за заданим критерієм з таблиці, яка є результатом злиття двох інших таблиць autors та titles бази даних publications. Порядок виконання завдання 3:
- •Завдання 4. Об’єднати три початкові таблиці authors, titles та publishers в одну результативну таблицю і створити вибірку до неї відповідно до заданого критерію. Порядок виконання завдання 4:
- •2 Вивчення методів пошуку та опрацювання даних
- •Завдання 3. Створити запит з розрахунком всередині інструкції Select.
- •4.6 Літературні джерела:
- •3 Вивчення методів оформлення наукових результатів
- •Завдання 2. Вивчити процедуру конкатенації даних – об’єднання стовпців.
- •Завдання 4. Вирішити функціональну задачу на основі складного запиту.
- •Завдання 5. Вивчити формат команд угруповування даних
- •Завдання 6. Вивчити формат команд сортування даних
- •3 Вивчення методів оформлення наукових результатів
- •0927 – "Видавничо-поліграфічна справа" для магістрантів
Завдання 2. Вивчити процедуру конкатенації даних – об’єднання стовпців.
SQL дозволяє не тільки запрошувати дані з окремих стовпців, але й об'єднувати декілька стовпців в один стовпець і надавати йому псевдонім. Процедура конкатенації не створює нового стовпця в таблиці, а організує стовпець на множині результатів. Після виконання процедури конкатенації даних, наприклад ABC і DEF, отримуємо об'єднання стовпців типу ABCDEF.
Порядок виконання завдання 2.
1. Застосовується конкатенація в основному до текстових літералів і стовпців, які мають тип даних char або varchar. При об'єднанні тексту з числами можуть виникнути помилки. Для уникнення помилок використовується процедура конвертування, коли спочатку числові поля перетворюються в тексті поля, а потім виконується процедура конкатенації.
2. Пропонується створити таблицю NumberDetails (рис. 5) командами:
CREATE TABLE NumberDetails (Num_id INT, FirstName VARCHAR(25), LastName VARCHAR(25));
INSERT INTO NumberDetails (Num_id, FirstName, LastName) VALUES (1, ''Katie'', ''Smith '');
Рис. 5 – Початкова таблиця NumberDetails
3. Сформувати інструкцію конкатенації для створення повного імені (имя+фамилия) з розташованих в стовпцях імені та прізвища:
SELECT FirstName + ' ' + LastName AS FullName FROM NumberDetails;
Цей оператор SQL повертає наступні результати (рис. 6):
Рис. 6 – Вихідна таблиця NumberDetails
4. Створити інструкцію конкатенації для приєднання тексту до стовпців:
SELECT 'Ім’я – ' + FirstName + ', прізвище – ' + LastName AS FullName
FROM NumberDetails;
Цей оператор SQL повертає наступні результати (рис. 7):
Рис. 7 – Вихідна таблиця Приєднання
Завдання 3. Вивчити порядок об’єднання таблиць при створенні запитів.
Спроектована належним чином реляційна база даних приваблює до себе наявностю в ній потрібних зв'язків між таблицями. При виборі інформації з двох таблиць такі зв'язки називаються об'єднаннями двох таблиць.
Порядок виконання завдання 3:
1. Проаналізувати приведений нижче запит щодо структури бази даних:
SELECT employeeName, departmenName
FROM employee, department
WHERE employee.departmentID = departments.departmentID;
2. Створити згідно запиту дві таблиці даних (рис. 8) командами:
CREATE TABLE employee(employeeID INT, employeeName
VARCHAR(25), departmentID INT);
Create table department (departmentID INT, departmentName varchar(25));
INSERT INTO employee (employeeID, employeeName, departmentID)
VALUES (1, 'Андрій Фоменко', 1);
INSERT INTO department (departmenеtID, departmentName) VALUES
(1, 'Фінансовий відділ');
Рис. 8 – Початкові дані для створення запиту до двох таблиць
3. Виконати запит до двох таблиць employees та departments (рис. 9):
SELECT employeeName, departmentName FROM employee, department
WHERE employee.departmentID = department.departmentID;
Рис. 9 – Результуюча таблиця про службовців певних відділів
Ця команда у виразі FROM містить дві таблиці, які необхідні для того, щоб з бази даних вибрати імена службовців і відповідні назви відділів, в яких вони працюють. У вихідній таблиці запиту відображаються імена службовців з назвами відповідних відділів.
4. Виконати попередній запит без пропозиції WHERE (рис. 10) командою:
select employee.name, department.name from employee, department;
Вихідна множина, що містить усі можливі комбінації імен службовців й назв відділів, у тому числі й неприпустимих, називається декартовим добутком цих таблиць. Для вибору припустимих комбінацій використовується умова employee.departmentID = department.departmentID, яка зв'язує таблиці зовнішніми ключами схеми даних.
Рис. 10 – Вихідна таблиця без пропозиції WHERE