
- •Введение в теорию баз данных (данные, база данных, предметная область, запись, атрибут, объект, субд).
- •Индексирование бд. Правила индексирования.
- •Модель данных. Взаимосвязи в модели данных (один к одному, один ко многим, многие ко многим).
- •Связанные таблицы. Ключи. Виды ключей.
- •Нормализация. 1нф, 2нф, 3нф.
- •Проектирование бд. Правила проектирования.
- •Иерархическая модель данных.
- •Реляционная модель данных.
- •Сетевая модель данных.
- •Создание структуры базы данных средствами субд ms Access.
- •Работа с sql-запросами в ms Access.
- •Организация поиска в базе данных на примере ms Access.
- •Работа с формами и отчётами в ms Access.
- •Типы данных в sql.
- •Предложение select. Область применения. Формат записи.
- •Выборка вычисляемых значений. Исключение дубликатов.
- •Фраза where. Операторы сравнения.
- •Фразы between, in, like.
- •Выборка с упорядочением.
- •Использование фразы having.
- •Запросы с использованием нескольких таблиц.
- •Предложение delete. Удаление единственной записи. Удаление множества записей.
- •Предложение insert. Вставка единственной записи. Вставка множества записей.
- •Обзор визуальных компонентов среды delphi, необходимых для работы с базами данных.
- •Обзор не визуальных компонентов среды delphi, необходимых для работы с базами данных.
- •Реализация sql-запросов при работе с базой данных в среде delphi.
- •Сравнение технологий bde и ado.
Выборка с упорядочением.
Таблицы - это неупорядоченные наборы данных, и данные которые выходят из их, не обязательно появляются в какой-то определенной последовательности. ORDER упорядочивает вывод запроса согласно значениям в том или ином количестве выбранных столбцов. Многочисленые столбцы упорядочиваются один внутри другого, также как с GROUP BY, и вы можете определять возрастание ( ASC ) или убывание ( DESC ) для каждого столбца. По умолчанию установлено - возрастание. Давайте рассмотрим нашу таблицу порядка приводимую в порядок с помощью номера:
SELECT * FROM Orders ORDER BY cnum DESC;
Мы можем также упорядочивать таблицу с помощью другого столбца, например с помощью поля amt, внутри упорядочения поля cnum
SELECT * FROM Orders ORDER BY cnum DESC, amt DESC;
SQL-функции. Фраза GROUP BY.
В SQL предусматривается ряд специальных стандартных функций (SQL-функций
COUNT - число значений в столбце служит для подсчета всех без исключения строк в таблице (включая дубликаты).
SUM - сумма значений в столбце столбец должен содержать числовые значения.
AVG - среднее значение в столбце столбец должен содержать числовые значения.
MAX - самое большое значение в столбце
MIN - самое малое значение в столбце
FIRST() - данная функция возвращает первое значение для выбранного столбца.
LAST() - данная функция возвращает последнее значение для выбранного столбца
Строковые функции SQL
UCASE() - функция преобразует символы в верхний регистр.
LCASE() - функция преобразует символы в нижний регистр.
MID() - функция используется для получения определенного количества символов из текстового поля.
LEN() - определяет длину строки.
ROUND() - данная функция используется для округление плавающего числа.
NOW() - функция, которая возвращает текущую системную дату и время.
FORMAT() - данная функция используется для форматирования полей.
Фраза GROUP BY (группировать по) инициирует перекомпоновку указанной во FROM таблицы по группам, каждая из которых имеет одинаковые значения в столбце, указанном в GROUP BY. Далее к каждой группе применяется фраза SELECT. Каждое выражение в этой фразе должно принимать единственное значение для группы, т.е. оно может быть либо значением столбца, указанного в GROUP BY, либо арифметическим выражением, включающим это значение, либо константой, либо одной из SQL-функций, которая оперирует всеми значениями столбца в группе и сводит эти значения к единственному значению (например, к сумме).
SELECT ПР, SUM(К_во)
FROM Поставки
GROUP BY ПР;
Отметим, что фраза GROUP BY не предполагает ORDER BY.
Использование фразы having.
Фраза HAVING играет такую же роль для групп, что и фраза WHERE для строк: она используется для исключения групп, точно так же, как WHERE используется для исключения строк. Эта фраза включается в предложение лишь при наличии фразы GROUP BY, а выражение в HAVING должно принимать единственное значение для группы.
Например, выдать коды продуктов, поставляемых более чем двумя поставщиками:SELECT
FROM Поставки
GROUP BY ПС
HAVING COUNT(*) > 2;