Оператор LIKE.
Організація баз даних
Інші параметри запиту не є обов’язковими і використовуються для визначення додаткових вимог до даних, які мають бути відібрані, щоб сформувати вихідну таблицю. В останньому запиті використано функцію Year (), яка виділяє з дати рік. Оскільки в таблиці є поле з аналогічним іменем, то ім'я поля взято у зворотні лапки. Знак відсотка (%) замінює послідовність будь-якого числа символів (включаючи… Читати ще >
Оператор LIKE. Організація баз даних (реферат, курсова, диплом, контрольна)
LIKE застосовують тільки до текстових полів, наприклад, CHAR чи VARCHAR, з якими він використовується, щоб знаходити підстрічки. Тобто він шукає у текстовому полі, чи співпадає з умовою його вміст. Як умову оператор використовує групові символи (wildkards) — спеціальні символи, які можуть відповідати чому-небудь. Є два типи групових символів, що використовуються з LIKE:
символ підкреслення (_) замінює будь-який один символ. Наприклад, 'b_t' буде відповідати словам 'bat' або 'bit', але не буде відповідати 'brat'.
знак відсотка (%) замінює послідовність будь-якого числа символів (включаючи символи нуля). Наприклад, '%p%t' буде відповідати словам 'put', 'posit', 'opt', але не 'spite'.
Наприклад, нам потрібно вивести всіх абонентів, прізвище яких починається на «Гавр» :
SELECT * from Phone where Abonent Like 'Гавр%'.
Агрегатні функції
Запити можуть видавати узагальнене групове значення полів і значення одного поля. Це робиться за допомогою агрегатних функцій. Агрегатні функції видають одне значення для всієї групи таблиці. Список цих функцій:
Функція. | Обчислює для кожної групи запитів. | |
Count. | Кількість рядків. | |
Sum. | Суму значень заданого параметра. | |
Avg. | Середнє значення заданого параметра. | |
Max. | Найбільше значення заданого параметра. | |
Min. | Найменше значення заданого параметра. | |
Всі агрегатні функції ігнорують порожні (NULL) значення полів. Виняток становить лише функція COUNT. При вказуванні як аргументу символа «*» (зірочка) вона видасть кількість рядків незалежно від того, які значення в них містяться.
Наприклад, потрібно визначити кількість фільмів в таблиці film_list:
SELECT COUNT (Name) FROM film_list.
Вивести рік, коли знімався найстаріший фільм з таблиці, враховуючи, що при невідомому році в таблицю заносились нулі.
SELECT MIN (Year).
FROM film_list.
where year0.
Агрегатні функції можуть приймати як аргумент не тільки поля таблиці, але й вирази. Наприклад, визначити максимальну різницю років між датою випуску фільму й датою його додавання до таблиці:
Select (Year (`AddDate')-'уеаґ).
FROM film_list.
where 'year'0.
В останньому запиті використано функцію Year (), яка виділяє з дати рік. Оскільки в таблиці є поле з аналогічним іменем, то ім'я поля взято у зворотні лапки.
При створенні будь-якого запиту обов’язково потрібно визначити:
поля вихідної таблиці запиту (тобто поля таблиці, яка буде отримана внаслідок виконання запиту);
вхідні таблиці, з яких будуть вибиратися дані для формування вихідної таблиці.
Інші параметри запиту не є обов’язковими і використовуються для визначення додаткових вимог до даних, які мають бути відібрані, щоб сформувати вихідну таблицю.