Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВСТУП пхп.docx
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
9.07 Mб
Скачать

Практична частина

  1. Використовуючи дані лабораторної роботи №12 створити файл config.php для з’еднання з БД.

  2. За допомогою запитів вивести данні таблиць з Вашої БД.

  3. Показати роботу викладачеві.

Лабораторна робота №15 Виконання запитів до бази даних.

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

Контрольні питання

  1. Що таке корельований запит? Чим відрізняється корельований запит від некоррелірованнимі?

  2. Які існують обмеження на формування корелювати запиту?

  3. Яким чином зберегти результати запиту в таблиці?

  4. Що таке зовнішнє з'єднання?

  5. В яких випадках замість фрази IN можна використовувати операцію порівняння?

  6. Які існують засоби групування в SQL? Як вони використовуються??

Теоретичні відомості

Прості запити на мові SQL

Запит на мові SQL формується з використанням оператора Select. Оператор Select використовується

  • для вибірки даних з бази даних;

  • для отримання нових рядків в складі оператора Insert;

  • для оновлення інформації в складі оператора Update.

В загальному випадку оператор Select містить наступні сім специфікатор, розташованих в операторі в наступному порядку:

  • специфікатор Select;

  • специфікатор From;

  • специфікатор Where;

  • специфікатор Group by;

  • специфікатор Having;

  • специфікатор Order by;

Обов'язковими є лише специфікатори Select і From. Ці два специфікатора складають основу кожного запиту до бази даних, оскільки вони визначають таблиці, з яких вибираються дані, і стовпці, які потрібно вибрати.

Специфікатор Where додається для вибірки певних рядків або для вказівки умови з'єднання. Специфікатор Order by додається для зміни порядку одержуваних даних. Специфікатор Into temp додається для збереження цих результатів у вигляді таблиці з метою виконання подальших запитів. Два додаткових специфікатора оператора Select - Group by (специфікатор групування) і Having (специфікатор умови вибірки групи) - дозволяють виконувати більш складні вибірки даних.

Вибір за шаблоном.

Для запитів з пошуком по шаблону, заснованих на пошуку підрядка в полях типу CHARACTER, використовуються ключове слова LIKE.

Включення в вираз ключового слова NOT породжує умову c зворотним змістом. Ключове слово LIKE відповідає стандарту ANSI.

Таб. 14.1 – Символи, які використовуються з ключовим словом LIKE.

Символ

Значення

%

Замінює послідовність символів

-

Замінює будь-який одиночний символ

\

Скасовує спеціальне призначення наступного за ним символу

Функції

select_expression може містити наступні функції і оператори(таб. 14.2)

+ - * /

Арифметичні дії.

%

Залишок від ділення

| &

Бітові функції (використовується 48 біт).

- С

Мена знака числа.

( )

Дужки.

BETWEEN(A, B, C)

(A >= B) AND (A <= C).

BIT_COUNT()

Кількість біт.

ELT(N, a, b, c, d)

Повертає a, якщо N == 1, b, якщо N == 2 і т.д. a, b, c, d рядка.

ПРИКЛАД:

ELT(3, "First", "Second", "Third", "Fourth") поверне "Third".

FIELD(Z, a, b, c)

Повертає a, якщо Z == a, b, якщо Z == b і т.д. a, b, c, d рядка.

ПРИКЛАД:

FIELD("Second", "First", "Second", "Third", "Fourth") поверне "Second".

IF(A, B, C)

Якщо A істина (!= 0 and != NULL), те поверне B, інакше поверне C.

IFNULL(A, B)

Якщо A не null, поверне A, інакше поверне B.

ISNULL(A)

Поверне 1, якщо A == NULL, інакше поверне 0. Еквівалент ('A == NULL').

NOT !

NOT, поверне TRUE (1) або FALSE (0).

OR, AND

Поверне TRUE (1) або FALSE (0).

SIGN()

Поверне -1, 0 або 1 (знак аргументу).

SUM()

Сума стовпця.

= <> <= < >= >

Поверне TRUE (1) або FALSE (0).

expr LIKE expr

Поверне TRUE (1) або FALSE (0).

expr NOT LIKE expr

Поверне TRUE (1) або FALSE (0).

expr REGEXP expr

Перевіряє рядок на відповідність регулярному вираженню expr.

select_expression може також містити один або більшу кількість наступних математичних функцій. (таб. 14.3)

ABS()

Модуль числа.

CEILING()

()

EXP()

Експонента.

FORMAT(nr, NUM)

Форматує число в формат '#, # # #, # # #. # #' З NUM десяткових цифр.

LOG()

Логарифм.

LOG10()

Логарифм по основі 10.

MIN(), MAX()

Минімум або максимум відповідно. Повинна мати при виклику два або більше аргументів, інакше розглядається як групова функція.

MOD()

Залишок від ділення (аналог %).

POW()

Степінь.

ROUND()

Округлення до найближчого цілого числа.

RAND([integer_expr])

Випадкове число типу float, 0 <= x <= 1.0, використовується integer_expr як значення для запуску генератора.

SQRT()

Квадратний корінь

select_expression може також містити одну або більше строкових функцій (таб. 14.4).

CONCAT()

О б'єднання рядків

INTERVAL(A, a, b, c, d)

Повертає 1, якщо A == a, 2, якщо A == b ... Якщо збігів немає, поверне 0. A, a, b, c, d ... рядки.

INSERT(org, strt, len, new)

Замінює підрядок org [strt ... len (gth)] на new. Перша позиція рядка = 1.

LCASE(A)

Призводить A до нижнього регістра.

LEFT()

Повертає рядок символів, раховуючи зліва.

LENGTH()

Довжина рядка.

LOCATE(A, B)

Позиція підрядка B в рядку A.

LOCATE(A, B, C)

Позиція підрядка B в рядку A, починаючи з позиції C.

LTRIM(str)

Видаляє всі початкові пробіли з рядка str.

REPLACE(A, B, C)

Замінює всі підрядки B в рядку A на підрядок C.

RIGHT()

Get string counting from right.

RTRIM(str)

Видаляє пробіли в кінці із рядка str.

STRCMP()

Повертає 0, якщо рядки однакові.

SUBSTRING(A, B, C)

Повертає підрядок з A, з позиції B до позиції C

UCASE(A)

Переводить A у верхній регістр.