Читайте также:
|
|
В запросе может выполняться обобщение как отдельных значений, так и групп значений. Это делается с помощью агрегатных функций, которые выводит единственное значение для целой группы столбцов. К агрегатным функциям относятся:
COUNT – определяет количество строк, выбранных запросом
SUM – вычисляет арифметическую сумму всех выбранных значений данного столбца
AVG – среднее значение
MAX – наибольшее значение
MIN – наименьшее значение
Для SUM и AVG – только числовые столбцы. Для COUNT, MIN и MAX допустимы любые типы данных.
Например:
1. SELECT SUM (amt)
FROM Orders; - считает сумму всех заказов
2. SELECT COUNT(*)
FROM Customers; - считает количество строк в таблице
Предложение GROUP BY позволяет выделить из отдельного столбца подмножество значений и применить к нему агрегатную функцию. Предположим, нужно найти самый крупный заказ, полученный каждым продавцом. GROUP BY позволяет сгруппировать запросы по значению snum, а затем вычислить MAX дл каждой группы:
SELECT snum, MAX (amt)
FROM Orders
GROUP BY snum;
Для фильтрации таких групп используется предложение HAVING. В нём задаются критерии, по которым из результата исключаются определенные группы.
Предположим, что в предыдущем примере нужно вывести сведения только о тех покупках, стоимость которых составляет больше 3000.
SELECT snum, MAX (amt)
FROM Orders
GROUP BY snum
HAVING MAX (amt) > 3000;
Доп. Вопрос. Какие функции работают только с числовыми данными а какие и с символьными
Для SUM и AVG – только числовые столбцы. Для COUNT, MIN и MAX допустимы любые типы данных.
Символ А это минимум. Символ Я максимум.
Операции с записями. Операторы INSERT, DELETE и UPDATE.
Все строки в SQL вводятся с помощью команды INSERT. Она имеет следующий синтаксис:
INSERT INTO имя таблицы
VALUES (значение.,..);
Можно явно указать имена столбцов, в которые требуется вставить значении. Это позволяет выполнить ввод в любой последовательности. Например:
INSERT INTO
Customers (city, cname, cnum)
VALUES (‘London’, ‘Hoffman’, 2001);
Для удаления строк из таблицы предназначена команда обновления DELETE. Она удаляет строки целиком, а не значении отдельных столбцов.
Например, удалить все содержимое таблицы можно оператором:
DELETE FROM Salespeople;
Если необходимо удалить только те строки, которые в городе Лондоне, следует использовать предикат. Например:
DELETE FROM Salespeople
WHERE city = ‘London’;
Изменение всех или нескольких значений в существующих строках выполнятся с помощью оператора UPDATE. Например, для изменения рейтинга всех покупателей на 200 можно ввести:
UPDATE Customers
SET rating =200;
Присваивать одинаковое значение всем строкам таблицы требуется далеко не всегда, поэтому оператор UPDATE, как и DELETE, может содержать предикат. Для изменения рейтинга только у покупателя с номером 1001, выполним:
UPDATE Customers
SET rating = 200
WHERE snum = 1001;
Доп. вопросы.
Чем отличается оператор DROP от оператора DELETE. Первый удаляет таблицу, второй только записи в таблице
Можно ли вводить данные только в отдельные столбцы. Можно
Основные понятия реляционной базы данных (отношение, домен, сущность, связь, атрибут, ключ (идентификатор)).
На рисунке представлена в общем виде схема, определяющая основные понятия реляционной БД:
В реляционной БД представление данных не зависит от способа их физичесакой организации. Это обеспечивается за счет использования математической теории отношений (само название «реляционная» происходит от английского relation – «отношение»). Отношения удобно представлять в виде таблиц, где имеются кортежи (строки). Каждая строка фактически представляет собой описание одного объекта реального мира. Столбцы в таблице, представляющей реляционное отношение, называются атрибутами. Каждый атрибут определен на домене, поэтому домен можно рассматривать как множество допустимых значений данного атрибута.
Несколько атрибутов одного отношения и даже атрибуты разных отношений могут быть определены на одном и том же домене (Оклад и Премия определены на домене Деньги).
Атрибут, значение которого однозначно идентифицирует кортежи, называется ключевым (или просто ключом). В примере – Табельный номер, поскольку его значение уникально для каждого работника предприятия.
В данном примере всю таблицу можно назвать сущностью (Работник), которая может быть связана с другими сущностями (таблицами) по ключевым полям.
Доп. Вопрос. Может ли ключ состоять из нескольких столбцов. Может
Чем отличается первичный ключ от вторичного. Первичный ключ это уникальный идентификатора записи (строки) данной таблицы. А по вторичному идет связь между таблицами.
Дата добавления: 2015-10-30; просмотров: 175 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Распределенные БД. Понятие о трехуровневой архитектуре БД. | | | Классификация моделей данных. Даталогические модели. Физические модели. Иерархическая модель. Сетевая модель. Реляционная модель. |