Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Агрегатные функции. Предложения group BY, having.

Читайте также:
  1. A) Work in groups of three. Make a list of at least five chemical products which are manufactured on a large scale.
  2. A10. Укажите правильную морфологическую характеристику слова ГОТОВЫ из четвертого (4) предложения текста.
  3. A9. Укажите верную характеристику второго (2) предложения текста.
  4. Accented group
  5. Act as an interpreter. Translate the description of N-type and P-type- semiconductors given by your group mates from English into Russian.
  6. Army Group South
  7. B) Choose any picture you like and prepare the description of this picture for your group-mates to guess.

В запросе может выполняться обобщение как отдельных значений, так и групп значений. Это делается с помощью агрегатных функций, которые выводит единственное значение для целой группы столбцов. К агрегатным функциям относятся:

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 | Нарушение авторских прав


Читайте в этой же книге: Понятие алгоритма. Основные требования, которым должен удовлетворять алгоритм. | Объектно-ориентированное программирование (ООП). Основные признаки. Основные определения ООП. | Понятие типов данных. Переменные и константы. Базовые типы данных и спецификаторы типов. | Одномерные и двумерные массивы. Базовые алгоритмы работы с массивами. | Понятие класса и экземпляра класса. Конструкторы и деструкторы. | Каскадная и спиральная модели разработки информационных систем. Преимущества и недостатки. | Недостатки спиральной модели | Основные принципы структурного подхода. Преимущества и недостатки. | Метод функционального моделирования SADT. | Моделирование потоков данных DFD. |
<== предыдущая страница | следующая страница ==>
Распределенные БД. Понятие о трехуровневой архитектуре БД.| Классификация моделей данных. Даталогические модели. Физические модели. Иерархическая модель. Сетевая модель. Реляционная модель.

mybiblioteka.su - 2015-2024 год. (0.008 сек.)