Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МНД_Мет_Лаб_Сервер.doc
Скачиваний:
3
Добавлен:
20.11.2019
Размер:
1.62 Mб
Скачать

Завдання 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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]