Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Звіт_з_практики.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2.1 Mб
Скачать

3. Функції маніпулювання даними Теоретичні відомості

Під такими функціями розуміють операції, що виконуються над даними, як правило, для зручнішого опрацюван­ня та модифікації інформації до бажаного вигляду. Розрізняють функції для роботи з текстом, датою і часом, числові функції.

Функції для роботи з текстом

Locate() Щукає позицію однієї стрічки в іншій

Lower() Перетворює символи стрічки в нижній регістр

LTrim() Обрізає пробіли зліва

Right() Повертає вказану кількість символів стрічки, рахуючи справа

RTrim() Обрізає пробіли справа

SubString() Повертає вирізану частину стрічки

Upper() Перетворює символи стрічки у верхній регістр

Left() Повертає вказану кількість символів стрічки, рахуючи зліва

Length() Повертає довжину стрічки

ФункціяCASE

Використовується, якщо виникає необхідність при побудові вибірки аналізувати зна­чення полів і виводити в деякому стовпці одне значення при певній умові та інше, коли ця умова не виконується.

Синтаксис

CASE вираз WHEN значення виразу THEN результат, що повер­тається [WHEN [значення виразу] THEN результат, що повер­тається ... ]

[ELSE результат що, повертається за замовчуванням при невиконанні жодної з умов]

END

Або альтернативний варіант:

CASE WHEN [умова1] THEN результат, що повертається1[WHEN [умова2] THEN результат, що повертається2 ...]

[ELSE результат, що повертається при невиконанні жодної з умов]

END

Практичні завдання

  1. З таблиці studentsбази даних univer вивести у верхньомурегістріПІБ всіх студентів та відсортувати їх по алфавіту. Використати функцію upper. Повинні бути виведені два поля: nameта name_big (тимчасове поле для ПІБ у верхньому регістрі). Для цього виконайте наступний SQL-запит:

Заходимо до БД univer, далі у таблицю students та в пункті меню SQL, виконуємо запит:

SELECT `name`, upper(`name`) as `name_big` FROM `students` order by `name_big`

  1. В таблиці studentsбази даних univer вивести кількість символів у ПІБ кожного студента. На екран треба вивести ПІБ та кількість символів в два окремі стовпці.

Для того щоб вивести кількість символів у ПІБ кожного студента, треба записати такий SQL запит:

SELECT `name`, Length(`name`) as `name_count` from `students`;

  1. З БД phones вивести список абонентів, які проживають на вулиці Пухова. В отриманому результаті має бути два поля: абонент (abonent) і сторона (side). Вважати, що абонент проживає на правій стороні, якщо номер будинку парний і на лівій — якщо непарний. Вказівка: використати оператор CASE.

Щоб вивести абонентів, які проживають по вулиці (в моєму випадку це вулиця) - Шевченко та створити два поля - abonent і side, треба використати наступний SQL-запит:

SELECT `abonent`, (case ((`house`) mod 2) when 0 then 'права сторона' else 'ліва сторона' end) as `side` FROM `phone` where `street`='Шевченко'

  1. Зробити вибірку з таблиці students даних univer, яка має містити два стовпці: «ім’я студента» (name), та «форма навчання» (form), де має бути слово «платна», коли відповідне поле paidв таблиці studentsдорівнює 1, або «державна», коли – 0.

Щоб зробити вибірку з таблиці students, БД univer, потрібно виконати SQL-запит:

SELECT `name`, (case(`paid`=1) when true then 'платна' else 'державна' end) as `paid` from `students`;

Завдання 4. Дії insert, update, delete