
- •Введение
- •Часть 1
- •Глава 1 модели данных
- •Уровни моделей данных
- •1 Инфологические модели данных
- •1.1 Диаграмма Бахмана
- •1.2 Модель «сущность-связь»(er)
- •Нотация Мартина
- •Нотация idef1x
- •Нотация Баркера
- •2. Даталогические модели
- •2.1. Документальные модели
- •2.1.1. Ориентированные на формат документа
- •2.1.2. Дескрипторные модели
- •2.1.3. Тезаурусные модели
- •2.2. Фактографические модели
- •2.2.1. Теоретико-графовая модель
- •2.2.1.1. Иерархическая модель
- •2.2.1.2. Сетевая модель
- •2.2.2. Теоретико-множественные модели
- •2.2.2.1. Реляционная модель
- •Правила Теда Кодда
- •2.2.2.2. Бинарных ассоциаций
- •2.2.3. Объектно-ориентированные модели
- •3. Физические модели
- •3.1. Модели, основанные на файловых структурах
- •3.2. Модели, основанные на странично-сегментной организации
- •Известные сетевые субд:
- •Глава 2. Проектирование баз данных
- •1.1. Избыточность данных и аномалии обновления
- •1.2. Функциональные зависимости
- •1.3. Нормальные формы и схемы выполнения нормализации
- •1) 1Нф.
- •2) 2Нф.
- •3) 3Нф.
- •4) Нфбк (нормальная форма Бойса-Кодда).
- •5) 4Нф.
- •6) 5Нф.
- •1.4 Синтез реляционных баз данных
- •1.5 Пример синтеза
- •1.6 Пример декомпозиции
- •Часть 2
- •Реляционная алгебра
- •Введение
- •Стандартные реляционные операции
- •Свойства стандартных операций
- •Специальные операции
- •Язык sql как стандартный язык баз данных
- •Введение в sql
- •2.1.1 Функциональные возможности sql
- •2.2 Создание баз данных
- •2.2.1 Оператор create database
- •2.3 Удаление баз данных
- •2.4.3 Размер поля
- •2.4.4 Тип поля
- •2.5 Удаление таблиц
- •2.5.1 Оператор drop table
- •2.6. Данные и записи данных
- •2.6.1 Оператор select
- •2.6.2 Оператор distinct
- •2.6.3 Оператор from { таблица [ псевдоним ] } [,...]
- •2.6.4 Оператор where (условие)
- •2.6.5 Оператор group by { поле | Integer } [,...]
- •2.6.6 Оператор having( условие)
- •2.6.7 Оператор order by { поле | Integer [ asc|desc ] } [,...]
- •2.6.8 Оператор union [all] select-команда
- •2.6.9 Оператор intersect [all] select-команда
- •2.6.10 Оператор except [all] select-команда
- •2.6.11 Into { temp | scratch } таблица
- •2.6.12 Insert - добавлять данные
- •2.6.13 Values ( константа [,...] )
- •2.6.18 Unload - выгрузить данные в текстовый файл
- •2.7 Операторы
- •2.7.3 Арифметические операторы
- •2.7.4 Приоритеты операторов
- •2.8 Функции
- •2.8.3 Текстовые функции
- •2.8.4 Функции работы с временем и датами
- •2.8.5 Вспомогательные функции
- •2.9 Виды на таблицы данных (Просмотры)
- •2.9.1Create view - создать новый вид на таблицу данных
- •2.9.2 Drop view - удалить вид на таблицу данных
- •2.10 Пользовательские процедуры
- •2.10.1 Create procedure - создать пользовательскую процедуру
- •2.10.2 Dba
- •2.10.3 References { byte | text }
- •2.10.4 Default { Wert | null }
- •2.10.5 Returning { Feldtyp | references { byte | text } }
- •2.10.6 Drop procedure - удалить процедуру
- •2.12.2 Нормальный текст
- •1999 - Sql-99, sql-3 (iso/iec 9075:1999(e) Information technology - Database languages - sql)
- •2003 - Sql-2003
- •4. Виды систем баз данных
- •4.1.Oracle
- •4.1.1 Типы данных
- •4.1.1.1.Символьные типы
- •4.1.1.2.Числовые типы
- •Даты, временные метки и интервалы
- •4.1.1.3.Логические типы
- •Двоичные данные
- •4.1.1.4.Типы данных для сети Интернет
- •4.1.1.5.Типы данных «Any»
- •4.2. Mysql
- •4.2.1 Типы данных.
- •4.2.1.1.Character String (строковый)
- •4.2.1.2.National Character String (национальный строковый)
- •4.2.1.3.Binary Large Object String (двоичный)
- •4.2.1.4.Numeric (числовой)
- •4.2.1.5.Datetime (дата/время)
- •4.2.1.6.Interval (интервальный)
- •4.2.1.7.Типы enum и set
- •4.2.2Использование типов столбцов их других систем управления базами данных
- •4.3. Postgresql
- •4.3.1 Типы данных
- •4.3.1.1Числовые типы
- •4.3.1.1.Целочисленные типы
- •4.3.1.2.Числа с заданной точностью
- •4.3.1.3.Типы с плавающей точкой
- •4.3.1.4.Серийные типы
- •4.3.1.5.Денежные типы
- •4.3.1.6.Символьные типы
- •4.3.1.7.Двоичные типы данных
- •4.3.1.8.Типы дата/времени
- •4.3.1.9.Логический тип
- •4.3.1.10.Перечисления
- •5. Использованные в пример таблицы данных
- •Символьные
- •Числовые типы данных
- •Двоичные типы данных
- •Типы данных времени, даты, интервалы
- •Логические типы данных
- •Список литературы
- •Оглавление
- •Часть 1………………………………………………………….…………………………….………… 4
- •Глава 1 модели данных………………………….………………….……………….…........…. 4
- •Глава 2 проектирование баз данных…………..……………………………………...… 40
- •1.4 Синтез реляционных баз …...………………………………………………………… 44
- •Часть 2……...…...………………………………………………………………………………….… 52
2.7.3 Арифметические операторы
Внутри формул значения и поля данных соединяются арифметическими операторами.
Оператор |
Описание |
Пример |
Значение |
- |
негативный знак |
-0.01 |
минус 0,01 |
+ |
позитивный знак (не обязателен) |
+.9 |
плюс 0,9 |
* |
умножение |
2*Field3 |
2 умножить на значение поля Field3 |
/ |
деление |
Prozent3/100 |
Значение поля Prozent3 делится на 100 |
+ |
сложение |
FeldA + (-0.9) |
Сложение значения поля FeldA и константы -0,01 |
- |
вычитание |
FeldA - 0.01 |
Значение поля FeldA минус 0,01 |
2.7.4 Приоритеты операторов
Все операторы языка SQL исполняются в определенной последовательности, в зависимости от их приоритета:
Оператор |
Описание |
Приоритет |
+- |
Знак числа |
0 |
* / |
Умножение и деление |
1 |
+ - |
Сложение и вычитание |
2 |
= |
равенство |
3 |
<> |
неравенство |
3 |
> |
больше |
3 |
< |
меньше |
3 |
>= |
больше или равно |
3 |
<= |
меньше или равно |
3 |
[NOT] BETWEEN ... AND ... |
[не] между ... и ... |
3 |
IS [NOT] NULL |
[не] без значения |
3 |
[NOT] IN |
[не] входит в состав списка |
3 |
NOT |
Отрицание |
4 |
AND |
Логическое И |
5 |
OR |
Логическое ИЛИ |
6 |
2.8 Функции
2.8.1Функции аггрегирования данных
Здесь вы найдете все функции аггрегирования данных, которые используются вместе с GROUP BY в команде SELECT и которые аггрегируют данные из многих записей данных или выполняют статистические функции на них.
2.8.1.1 AVG - среднее арифметическое
Синтаксис
AVG( поле )
Описание
AVG возвращает среднее арифметическое всех значений указанного поля : AVG(x) = SUM(x)/COUNT(x).
Пример:
SELECT AVG(price)
FROM detail;
Подсчитывает среднюю цену деталей
2.8.1.2 COUNT - подсчитать количество записей данных
Синтаксис:
COUNT( [ DISTINCT ] поле )
Описание:
COUNT подсчитывает количество сгруппированных строк данных, имеющих какое-либо значение в указанном поле.
Пример:
SELECT COUNT(DISTINCT price)
FROM warehouse;
Подсчитывает количество различных значений поля price в таблице warehouse.
2.8.1.3 SUM - суммировать значения
Синтаксис:
SUM( поле )
Описание:
SUM возвращает сумму всех значений указанного поля. NULL-значения не учитываются.
Пример:
SELECT SUM(price)
FROM warehouse;
Здесь подсчитывает сумма цен всех заказов, содержащихся в таблице warehouse.
2.8.1.4 MIN - наименьшее значение поля данных
Синтаксис
MIN( поле )
Описание
MIN возвращает наименьшее значение указанного поля в группе.
Пример:
SELECT MIN(price)
FROM warehouse;
Возвращает самое наименьшее значение поля price.
2.8.1.5 MAX - наибольшее значение поля данных
Синтаксис
MAX( поле )
Описание
MAX возвращает максимальное значение поля preis.
Пример:
SELECT MAX(price)
FROM warehouse;
Возращает наибольшую цену, содержащуюся в поле price.
2.8.1.6 RANGE - определить интервал данных
Синтаксис
RANGE( поле )
Описание
RANGE возвращает разницу между наибольшим и наименьшим значением поля, RANGE(x)=MAX(x)-MIN(x).
Пример:
SELECT PANGE(price)
FROM warehouse;
Возвращает интервал в котором содержатся цены.
2.8.1.7 STDDEV - стандартное отклонение
Синтаксис:
STDDEV( поле )
Описание:
STDDEV возвращает стандартное отклонение всех значений указанного поля (квадратный корень из дисперсии).
Пример:
SELECT STDDEV(price)
FROM warehouse;
Стандартное отклонение цен.
2.8.1.8 VARIANCE - дисперсия значений
Синтаксис
VARIANCE( поле )
Описание
VARIANCE вычисляет дисперсию значений указанного поля.
Пример:
SELECT VARIANCE(price)
FROM warehouse;
Дисперсия значений поля preis.
2.8.2 Математические функции
Здесь вы найдете наиболее важные математические и арифметические функции, которые поддерживаютя базами данных SQL.
Синтаксис |
Описание |
ABS(формула) |
ABS возвращает сам результат формулы, если он больше нуля, и результат помноженный на (-1), если он меньше нуля. |
CEIL(формула) |
CEIL округляет число или результат вычислений какой либо формулы до следующего челого числа вниз. |
HEX(формула) |
HEX конвертирует результат формулы в шестнадцатиричную систему. |
FLOOR(формула) |
Округляет результат формулы до следующего целого числа. |
MOD(формула 1формула 2) |
MOD возращает остаток от деления двух чисел. |
ROUND( формула[ Integer ] ) |
Округляет результат формулы до указанного количества значений после запятой. Если оно не указано, до округляет до целого. |
SQRT(формула) |
SQRT извлекает квадратный корень из числа. |
TAN(формула) |
TAN - тангенс числа. |
TRUNC(формула) |
TRUNC округляет до целого вниз. |