
- •Разработка баз данных средствами MySql
- •Содержание
- •Введение
- •1. Основы работы в субд MySql
- •Системы управления базами данных
- •Основные характеристики MySql
- •Команда create database
- •Работа с таблицами
- •Синтаксис команды create table
- •Удаление таблиц
- •Синтаксис команды drop table
- •Типы данных
- •Числовые данные
- •Строковые данные
- •Календарные данные
- •Тип данных null
- •Выбор типа данных
- •1 Вариант.
- •2 Вариант.
- •3 Вариант.
- •2. Работа с таблицами. Ввод, извлечение, поиск и удаление данных Запись данных в таблицы
- •Заполните таблицу employee_data 5-10 записями. Запрос данных из таблицы MySql
- •Выборка данных с помощью условий
- •Операторы больше и меньше
- •Поиск текстовых данных по шаблону
- •Предложение group by и having
- •Удаление записей из таблицы
- •Задание 1
- •Задание 2
- •Задание 3
- •3. Логические операции в MySql
- •Операторы in и between
- •Упорядочивание данных
- •Ограничение количества извлекаемых данных
- •Извлечение подмножеств
- •Ключевое слово distinct
- •Изменение записей
- •Задание 1
- •Задание 2
- •Задание 3
- •Вычисление среднего значения
- •Именование столбцов
- •Подсчет числа записей
- •Группировка данных
- •5. Математические функции в MySql. Строковые функции. Работа с датой Математические функции MySql
- •Строковые функции
- •Ascii(строка)
- •Concat(строка1, строка2, ...)
- •Особенности типа данных Date
- •Операции с датами
- •Определение диапазонов
- •Использование Date для сортировки данных
- •Выбор данных с помощью Date
- •Текущие даты
- •Тип столбца Null
- •Задание 1
- •Задание 2
- •Задание 3
- •6. Переменные и временные таблицы. Многотабличные запросы
- •7. Вложенные запросы в MySql
- •8. Хранимые процедуры и функции
- •9. Курсоры в MySql. Представления. Конструкции управления потоком данных
- •10. Анализ и моделирование предметной области
- •1. Выбор и текстовое описание предметной области
- •2. Разработка концептуальной er-модели предметной области
- •3. Определение функциональных требований
- •11. Проектирование базы данных
- •1. Создание логической реляционной модели базы данных
- •2. Нормализация логической реляционной модели базы данных
- •1Нф (Первая Нормальная Форма)
- •2Нф (Вторая Нормальная Форма)
- •3Нф (Третья Нормальная Форма)
- •12. Проектирование физической модели бд и ее реализация
- •1. Создание физической модели базы данных
- •2. Реализация физической модели базы данных в коде
- •13. Наполнение и тестирование бд
- •1. Наполнение базы данных
- •2. Тестирование базы данных
- •14. Создание приложения к бд в среде delphi 7, с использованием AnyDac framework 1.7.0
- •1. Начало работы
- •2. Связь с таблицами
- •3. Отображение таблицы на форме
- •4. Компонент adQuery
- •5. Экспорт данных в Excel
- •6. Работа с внешними ключами
- •Рекомендуемая литература
- •Разработка баз данных средствами MySql
- •460844, Г. Оренбург, ул. Советская, 19
5. Математические функции в MySql. Строковые функции. Работа с датой Математические функции MySql
MySQL, как и любая другая СУБД, обладает большим числом встроенных функций. Так же, как и в любом другом языке программирования, функции характеризуются именем и аргументами, которые перечисояются за именем в круглых скобках. Если аргументы у функции отсутствуют, круглые скобки все равно следует указывать, например, NOW(). Отличительной чертой MySQL является то, что при использовании функций пробелы между именем функции и круглыми скобками недопустимы, т.е. написание NOW() правильное, а NOW () уже нет. Результат функции подставляется в место вызова функции.
Замечание: все числовые функции возвращиют NULL, если при их работе возникает ошибка, например, если аргументы выходят за границы допустимых значений или в качестве аргументов передается NULL.
Рассмотрим некоторые из математических функций.
ABS (число)
Эта функция возвращает модуль числа
SQL – скрипт |
Результат |
SELECT abs (-4.05022); |
4.05022 |
SELECT abs (2); |
2 |
CEIL(число)
Эта функция округляет число до ближайшего большего целого числа.
SQL – скрипт |
Результат |
SELECT ceiling (1.3) |
2 |
SELECT ceil (1.03) |
2 |
SELECT ceil (-1.3) |
-1 |
LN (число) или LOG (число)
Эта функция возвращает натуральный логарифм числа.
SQL – скрипт |
Результат |
SELECT ln (2) |
0.693147 |
SELECT ln (-2) |
Null |
LOG(число1, число2)
При вызове с одним параметром функция LOG возвращает натуральный логарифм числа, а при вызове с двумя параметрами - возвращает логарифм числа2 по основанию число1.
SQL – скрипт |
Результат |
SELECT log (2, 65536) |
16.000000 |
SELECT log (1, 100) |
Null |
MOD(число1, число2)
число1 % число2
число1 MOD число2
Эта функция возвращает остаток от деления первого числа на второе подобно оператору %.
SQL – скрипт |
Результат |
SELECT mod (234, 10) |
4 |
SELECT 253 % 7 |
1 |
SELECT mod (29, 9) |
2 |
RAND ([число])
Возвращает случайное число с плавающей точкой в диапазоне от 0.0 до 1.0. Если указан целочисленный аргумент, он служит начальным числом для генератора случайных чисел (генерируя повторяющуюся последовательность). Если аргумент отсутствует, используется значение системных часов.
Функцию можно использовать для извлечения строк в случайном порядке.
SELECT * FROM имя_таблицы ORDER BY RAND();
ORDER BY RAND() в комбинации с LIMIT удобно для выбора случайного примера из набора строк:
SELECT * FROM tablel, table2 WHERE a=b AND c<d
-> ORDER BY RAND() LIMIT 1000;
Следует отметить, что RAND() в конструкции WHERE вычисляется заново при каждом выполнении WHERE.
SQRT (число)
Эта функция возвращает квадратный корень числа
SQL – скрипт |
Результат |
SELECT sqrt (15) |
3.872983 |
SELECT sqrt (4) |
2.000000 |
SELECT sqrt (20) |
4.472136 |