Что такое findslide.org?

FindSlide.org - это сайт презентаций, докладов, шаблонов в формате PowerPoint.


Для правообладателей

Обратная связь

Email: Нажмите что бы посмотреть 

Яндекс.Метрика

Презентация на тему Базы данных

Содержание

Определение базы данныхWhat is database?A collection of information organized to afford efficient retrievalhttp://www.usg.edu/galileo/skills/unit04/primer04_01.phtml
Базы данных 1 лекция Определение базы данныхWhat is database?A collection of information organized to afford efficient retrievalhttp://www.usg.edu/galileo/skills/unit04/primer04_01.phtml Определение базы данныхJim Grey , “The Fourth Paradigm”When people use the word РСУБДRelational Database Management Systems were invented to let you use one set Реляционная модельОснована на реляционной алгебре (но не полностью)Реляционная модель данных (РМД) — Реляционная модельДля лучшего понимания РМД следует отметить три важных обстоятельства:модель является логической, Обзор SQL Обзор SQLФункциональные возможности, которые СУБД предоставляет пользователю:Определение данныхВыборка данныхОбработка данныхУправление доступомСовместное использование данныхЦелостность данных Обзор SQLSQL это не полноценный язык программирования типа C, C++, Java и Роль SQL Преимущества SQLНезависимость от конкретных СУБДМежплатформенная переносимостьНаличие стандартовПоддержка со стороны вендоровПостроена на реляционной Преимущества SQLВозможность выполнения специализированных структурных запросовОбеспечение программного доступа к базам данныхВозможность различного Преимущества SQLПоддержка архитектуры клиент/серверПоддержка приложений уровня предприятияРасширяемость и поддержка объектно-ориентированных технологийВозможность доступа Развитие СУБД	Системы управления файламиИерархические базы данныхСетевые базы данныхРеляционная модель данныхОбъектно-ориентированные СУБДОбъектно-реляционные СУБДNO-SQL Современные СУБДОсновные функции СУБД:Управление данными во внешней памяти(на дисках)Управление данными в оперативной Современные СУБДСостав СУБД:- Ядро; отвечает за управление данными во внешней и оперативной Учебная база данных Учебная база данныхТаблица SALESREPSEMPL_NUM – уникальный номерNAME – полное имя служащегоAGE – Учебная база данныхТаблица PRODUCTS:MFR_ID – уникальный ключ фабрикиPRODUCT_ID – уникальный ключ фабрикиDESCRIPTION Учебная база данныхТаблица ORDERS:ORDER_NUM – уникальный номер заказаORDER_DATE – дата заказаCUST – Учебная база данныхТаблица OFFICES:OFFICE – уникальный номер офисаCITY – городREGION – регион Учебная база данных Таблица Customers:CUST_NUM – уникальный номер заказчикаCOMPANY – название компанииCUST_REP ТаблицыПервичные ключиВзаимоотношения (предок-потомок)Внешние ключи Основы SQL ИнструкцииОколо 40 инструкцийНапример:SELECTINSERTUPDATEMERGEDELETE Структура инструкции SQL Типы данныхCHARVARCHARNCHARCLOBNCLOBINT SMALLINTNUMERIC (точность, масштаб)DECIMAL (точность, масштаб) Типы данныхFLOAT DATETIMEDATE XML NULL Простые запросыМинимум:Стандарт:	SELECT 	FROM  Часть СУБД:	SELECT Простые запросыВывести список офисов с их планами и фактическими объемами продаж Простые запросыВывести список офисов с их планами и фактическими объемами продажSELECT CITY, TARGET, SALESFROM OFFICES; Простые запросы Вычисляемые столбцыВыдать для каждого офиса список городов, регионов и сумм, Простые запросы Вычисляемые столбцыВыдать для каждого офиса список городов, регионов и сумм, Простые запросы Вычисляемые столбцыВыдать для каждого офиса список городов, регионов и сумм, Простые запросыВычисляемые столбцы:Показать общую стоимость по каждому товару Простые запросыВычисляемые столбцы:Показать общую стоимость по каждому товару, продукт и его описаниеШаги:Выбрать Простые запросы Вычисляемые столбцы:Показать общую стоимость по каждому товару, продукт и его Простые запросы	 Вычисляемые столбцы: Что получится, если увеличить плановый объем продаж для Простые запросы	 Вычисляемые столбцы: Что получится, если увеличить плановый объем продаж для Простые запросыКонстанты:Список объемов продаж для каждого городаSELECT CITY, 'has sales of', SALESFROM OFFICES; Простые запросы	Дополнительные возможности SELECT * Простые запросы	Дополнительные возможности SELECT * FROM OFFICES; Простые запросы	Дополнительные возможности SELECT * DISTINCTSELECT MGR FROM OFFICES; Простые запросы	Дополнительные возможности SELECT * DISTINCTSELECT DISTINCT MGR FROM OFFICES;Удаление дублей Простые запросыОтбор строк (WHERE):Сравнение (=, , =)Проверка на принадлежность диапазонуПроверка наличия во Простые запросыСравнение:Найти имена всех служащих, принятых на работу до 2006 года Простые запросыСравнение:Найти имена всех служащих, принятых на работу до 2006 годаШаги:Выбрать таблицу Простые запросыСравнение:Найти имена всех служащих, принятых на работу до 2006 годаSELECT NAMEFROM Простые запросыСравнение с использованием вычисляемых столбцов:Вывести список офисов, фактические объемы продаж в Простые запросыСравнение с использованием вычисляемых столбцов:Вывести список офисов, фактические объемы продаж в Простые запросыСравнения. Значения NULL.Сравним SELECT NAME FROM SALESREPSи два других запроса SELECT NAMEFROM SALESREPSWHERE SALES QUOTA Простые запросыСравнения. Проверка на принадлежность диапазону.Найти все заказы, сделанные в последнем квартале 2007 года. Простые запросыСравнения. Проверка на принадлежность диапазону.Найти все заказы, сделанные в последнем квартале Простые запросыСравнения. Проверка на принадлежность диапазону.Найти все заказы, сделанные в последнем квартале Простые запросыВывести список служащих, фактические объемы продаж которых не попадают в диапазон Простые запросыВывести список служащих, фактические объемы продаж которых не попадают в диапазон Простые запросыСравнения. Проверка наличия во множестве.Вывести список служащих, которые работают в Нью-йорке, Простые запросыСравнения. Проверка наличия во множестве.Вывести список служащих, которые работают в Нью-йорке, Простые запросыПроверка на соответствие шаблону. LIKE.Я помню, что у нас был клиентом Простые запросыПроверка на соответствие шаблону. LIKE.Я помню, что у нас был клиентом Простые запросыПроверка на соответствие шаблону. LIKE.Я помню, что у нас был клиентом Простые запросыПроверка на соответствие шаблону. LIKE.Я помню, что у нас был клиентом Простые запросыПроверка на соответствие шаблону. LIKE. Найти товары, коды которых начинаются с Простые запросыПроверка на соответствие шаблону. LIKE. Найти товары, коды которых начинаются с Простые запросыПроверка на равенство NULLНайти служащего, который еще не закреплен за офисом Простые запросыПроверка на равенство NULLНайти служащего, который еще не закреплен за офисом.SELECT Простые запросыСоставные условия отбора (AND, OR и NOT)Найти служащих, у которых фактический Простые запросыСоставные условия отбора (AND, OR и NOT)Найти служащих, у которых фактический Простые запросыСоставные условия отбора (AND, OR и NOT)Найти всех служащих, которые работают Простые запросыСоставные условия отбора (AND, OR и NOT)Найти всех служащих, которые работают Простые запросыСортировка результатов запросаВывести список офисов, отсортированный по фактическим объемам продаж в порядке убывания. Простые запросыСортировка результатов запросаВывести список офисов, отсортированный по фактическим объемам продаж в Простые запросыСортировка результатов запроса.Вывести список всех офисов отсортированных по разности между фактическими Простые запросыСортировка результатов запроса.Вывести список всех офисов отсортированных по разности между фактическими Простые запросыГруппировка. GROUP BY.SUM([DISTINCT] значение)AVG([DISTINCT] значение)MIN(значение)MAX(значение)COUNT([DISTINCT] значение)COUNT(*) Простые запросыГруппировка. Какой наибольший процент выполнения плана среди всех служащих? Простые запросыГруппировка. Какой наибольший процент выполнения плана среди всех служащих?SELECT MAX( 100 Простые запросыГруппировка. Вычислить среднюю цену товаров от производителя ACI Простые запросыГруппировка. Вычислить среднюю цену товаров от производителя ACI.SELECT AVG(PRICE) AS avg_priceFROM ProductsWHERE MFR_ID = 'ACI'; Простые запросыГруппировка. Статистические функции и значения NULLSELECT COUNT(*), COUNT(SALES), COUNT(QUOTA)FROM SALESREPS;Статистическая функция Простые запросыГруппировка. Статистические функции и значения NULLSELECT COUNT(*), COUNT(SALES), COUNT(QUOTA)FROM SALESREPS;Статистическая функция Простые запросыГруппировка. Статистические функции и значения NULL.SELECT SUM(SALES), SUM(QUOTA), (SUM(SALES) – SUM(QUOTA)), Простые запросыГруппировка. Запросы с GROUP BYКакова средняя стоимость заказа для каждого служащего? Простые запросыГруппировка. Запросы с GROUP BYКакова средняя стоимость заказа для каждого служащего?SELECT Простые запросыГруппировка. Запросы с GROUP BYПодсчитать общую сумму заказов по каждому клиенту для каждого служащего Простые запросыГруппировка. Запросы с GROUP BYПодсчитать общую сумму заказов по каждому клиенту Простые запросыГруппировка. Запросы с GROUP BYПодсчитать общую сумму заказов по каждому клиенту Простые запросыГруппировка. Запросы с GROUP BYПодсчитать общую сумму заказов по каждому клиенту Простые запросыГруппировка. Запросы с GROUP BYКакова средняя стоимость заказа для каждого служащего Простые запросыГруппировка. Запросы с GROUP BYКакова средняя стоимость заказа для каждого служащего
Слайды презентации

Слайд 2 Определение базы данных
What is database?

A collection of information

Определение базы данныхWhat is database?A collection of information organized to afford efficient retrievalhttp://www.usg.edu/galileo/skills/unit04/primer04_01.phtml

organized to afford efficient retrieval

http://www.usg.edu/galileo/skills/unit04/primer04_01.phtml


Слайд 3 Определение базы данных
Jim Grey , “The Fourth Paradigm”
When

Определение базы данныхJim Grey , “The Fourth Paradigm”When people use the

people use the word database, fundamentally what they are

saying is that data should be self-describing and it should have a schema. That’s really all the world database means.

Слайд 4 РСУБД
Relational Database Management Systems were invented to let

РСУБДRelational Database Management Systems were invented to let you use one

you use one set of data in multiple ways,

including ways that are unforeseen at the time the database is built and the 1st applications are written.”

(Curt Monash, anaylst/blogger)

Слайд 5 Реляционная модель
Основана на реляционной алгебре (но не полностью)
Реляционная

Реляционная модельОснована на реляционной алгебре (но не полностью)Реляционная модель данных (РМД)

модель данных (РМД) — логическая модель данных, прикладная теория

построения баз данных, которая является приложением к задачам обработки данных таких разделов математики, как теория множеств и логика первого порядка

Слайд 6 Реляционная модель
Для лучшего понимания РМД следует отметить три

Реляционная модельДля лучшего понимания РМД следует отметить три важных обстоятельства:модель является

важных обстоятельства:

модель является логической, то есть отношения являются логическими

(абстрактными), а не физическими (хранимыми) структурами;
для реляционных баз данных верен информационный принцип: всё информационное наполнение базы данных представлено одним и только одним способом, а именно — явным заданием значений атрибутов в кортежах отношений; в частности, нет никаких указателей (адресов), связывающих одно значение с другим;
наличие реляционной алгебры позволяет реализовать декларативное программирование и декларативное описание ограничений целостности, в дополнение к навигационному (процедурному) программированию и процедурной проверке условий.
Принципы реляционной модели были сформулированы в 1969—1970 годах Э. Ф. Коддом (E. F. Codd). Идеи Кодда были впервые публично изложены в статье «A Relational Model of Data for Large Shared Data Banks, ставшей классической.

Слайд 7 Обзор SQL

Обзор SQL

Слайд 8 Обзор SQL
Функциональные возможности, которые СУБД предоставляет пользователю:
Определение данных
Выборка

Обзор SQLФункциональные возможности, которые СУБД предоставляет пользователю:Определение данныхВыборка данныхОбработка данныхУправление доступомСовместное использование данныхЦелостность данных

данных
Обработка данных
Управление доступом
Совместное использование данных
Целостность данных


Слайд 9 Обзор SQL
SQL это не полноценный язык программирования типа

Обзор SQLSQL это не полноценный язык программирования типа C, C++, Java

C, C++, Java и т.п.
SQL – это подъязык баз

данных, в который входит около 40 инструкций.
Инструкции SQL могут быть встроены в другой язык, такой как C или Java
SQL – декларативный язык программирования
SQL – стандарт для работы с РСУБД

Слайд 10 Роль SQL

Роль SQL

Слайд 11 Преимущества SQL
Независимость от конкретных СУБД
Межплатформенная переносимость
Наличие стандартов
Поддержка со

Преимущества SQLНезависимость от конкретных СУБДМежплатформенная переносимостьНаличие стандартовПоддержка со стороны вендоровПостроена на

стороны вендоров
Построена на реляционной модели
Высокоуровневая структура, напоминающая естественный

язык

Слайд 12 Преимущества SQL
Возможность выполнения специализированных структурных запросов
Обеспечение программного доступа

Преимущества SQLВозможность выполнения специализированных структурных запросовОбеспечение программного доступа к базам данныхВозможность

к базам данных
Возможность различного представления баз данных
Полноценность в качестве

языка, предназначенного для работы с БД
Возможность динамического определения данных

Слайд 13 Преимущества SQL
Поддержка архитектуры клиент/сервер
Поддержка приложений уровня предприятия
Расширяемость и

Преимущества SQLПоддержка архитектуры клиент/серверПоддержка приложений уровня предприятияРасширяемость и поддержка объектно-ориентированных технологийВозможность

поддержка объектно-ориентированных технологий
Возможность доступа к данным в Интернете
Интеграция с

языком Java (JDBC)
Поддержка открытого кода
Промышленная инфраструктура

Слайд 14 Развитие СУБД
Системы управления файлами
Иерархические базы данных
Сетевые базы данных
Реляционная

Развитие СУБД	Системы управления файламиИерархические базы данныхСетевые базы данныхРеляционная модель данныхОбъектно-ориентированные СУБДОбъектно-реляционные СУБДNO-SQL

модель данных
Объектно-ориентированные СУБД
Объектно-реляционные СУБД
NO-SQL


Слайд 15 Современные СУБД
Основные функции СУБД:
Управление данными во внешней памяти(на

Современные СУБДОсновные функции СУБД:Управление данными во внешней памяти(на дисках)Управление данными в

дисках)
Управление данными в оперативной памяти с использованием дискового кэша
Журнализация

изменений, резервное копирование и восстановление БД после сбоев
Поддержка языков БД (язык определения данных, язык манипулирования данными DML)


Слайд 16 Современные СУБД
Состав СУБД:
- Ядро; отвечает за управление данными

Современные СУБДСостав СУБД:- Ядро; отвечает за управление данными во внешней и

во внешней и оперативной памяти и журнализацию
- Процессор языка

БД, обеспечивающий оптимизацию запросов на извлечение и изменение данных и создание, как правило, машинно-независимого исполняемого внутреннего кода
- Подсистему поддержки времени исполнения,
которая интерпретирует программы манипуляции данными, создающий пользовательский интерфейс с СУБД
- Сервисные программы (внешние утилиты), обеспечивающие ряд дополнительных возможностей по обслуживанию информационной системы.

Слайд 17 Учебная база данных

Учебная база данных

Слайд 18 Учебная база данных
Таблица SALESREPS
EMPL_NUM – уникальный номер
NAME –

Учебная база данныхТаблица SALESREPSEMPL_NUM – уникальный номерNAME – полное имя служащегоAGE

полное имя служащего
AGE – возраст
REP_OFFICE – уникальный номер офиса
TITLE

– название должности
HIRE_DATE – дата найма
MANAGER – уникальный номер менеджера
QUOTA – план продаж на год
SALES – объем продаж с начала года



Слайд 19 Учебная база данных
Таблица PRODUCTS:
MFR_ID – уникальный ключ фабрики
PRODUCT_ID

Учебная база данныхТаблица PRODUCTS:MFR_ID – уникальный ключ фабрикиPRODUCT_ID – уникальный ключ

– уникальный ключ фабрики
DESCRIPTION – описание
PRICE – цена
QTY_IN_HAND -

количество

Слайд 20 Учебная база данных
Таблица ORDERS:
ORDER_NUM – уникальный номер заказа
ORDER_DATE

Учебная база данныхТаблица ORDERS:ORDER_NUM – уникальный номер заказаORDER_DATE – дата заказаCUST

– дата заказа
CUST – уникальный номер заказчика
REP – уникальный

номер сотрудника
MFR – уникальный номер фабрики
PRODUCT – уникальный номер продукта
QTY – количество в заказе
AMOUNT – сумма заказа

Слайд 21 Учебная база данных
Таблица OFFICES:
OFFICE – уникальный номер офиса
CITY

Учебная база данныхТаблица OFFICES:OFFICE – уникальный номер офисаCITY – городREGION –

– город
REGION – регион (США)
MGR – уникальный номер менеджера

офиса
TARGET – план офиса за год
SALES – продажи офиса за год

Слайд 22 Учебная база данных
Таблица Customers:
CUST_NUM – уникальный номер

Учебная база данных Таблица Customers:CUST_NUM – уникальный номер заказчикаCOMPANY – название

заказчика
COMPANY – название компании
CUST_REP – уникальный номер менеджера для

данной компании
CREDIT_LIMIT – лимит кредита для компании

Слайд 23 Таблицы
Первичные ключи
Взаимоотношения (предок-потомок)
Внешние ключи

ТаблицыПервичные ключиВзаимоотношения (предок-потомок)Внешние ключи

Слайд 24 Основы SQL

Основы SQL

Слайд 25 Инструкции
Около 40 инструкций
Например:
SELECT
INSERT
UPDATE
MERGE
DELETE

ИнструкцииОколо 40 инструкцийНапример:SELECTINSERTUPDATEMERGEDELETE

Слайд 26 Структура инструкции SQL

Структура инструкции SQL

Слайд 27 Типы данных
CHAR
VARCHAR
NCHAR
CLOB
NCLOB
INT
SMALLINT
NUMERIC (точность, масштаб)
DECIMAL (точность, масштаб)

Типы данныхCHARVARCHARNCHARCLOBNCLOBINT SMALLINTNUMERIC (точность, масштаб)DECIMAL (точность, масштаб)

Слайд 28 Типы данных
FLOAT
DATE
TIME
DATE
XML


Типы данныхFLOAT DATETIMEDATE XML

Слайд 30 Простые запросы
Минимум:
Стандарт:
SELECT
FROM

Часть СУБД:
SELECT

Простые запросыМинимум:Стандарт:	SELECT 	FROM Часть СУБД:	SELECT



Слайд 31 Простые запросы
Вывести список офисов с их планами и

Простые запросыВывести список офисов с их планами и фактическими объемами продаж

фактическими объемами продаж


Слайд 32 Простые запросы
Вывести список офисов с их планами и

Простые запросыВывести список офисов с их планами и фактическими объемами продажSELECT CITY, TARGET, SALESFROM OFFICES;

фактическими объемами продаж

SELECT CITY, TARGET, SALES
FROM OFFICES;


Слайд 33 Простые запросы
Вычисляемые столбцы
Выдать для каждого офиса список

Простые запросы Вычисляемые столбцыВыдать для каждого офиса список городов, регионов и

городов, регионов и сумм, на которые был перевыполнен/недовыполнен план


Слайд 34 Простые запросы
Вычисляемые столбцы
Выдать для каждого офиса список

Простые запросы Вычисляемые столбцыВыдать для каждого офиса список городов, регионов и

городов, регионов и сумм, на которые был перевыполнен/недовыполнен план
Преобразовать

в посл-ть действий:
Взять таблицу с офисами
Выбрать оттуда города, регионы и рассчитать разность сумм

Слайд 35 Простые запросы
Вычисляемые столбцы
Выдать для каждого офиса список

Простые запросы Вычисляемые столбцыВыдать для каждого офиса список городов, регионов и

городов, регионов и сумм, на которые был перевыполнен/недовыполнен план
SELECT

CITY, REGION,
(SALES - TARGET) AS diff_sales_and_target
FROM OFFICES;

Слайд 36 Простые запросы
Вычисляемые столбцы:
Показать общую стоимость по каждому товару

Простые запросыВычисляемые столбцы:Показать общую стоимость по каждому товару

Слайд 37 Простые запросы
Вычисляемые столбцы:
Показать общую стоимость по каждому товару,

Простые запросыВычисляемые столбцы:Показать общую стоимость по каждому товару, продукт и его

продукт и его описание
Шаги:
Выбрать таблицу по продуктам
Вывести идентификатор

продукта (а чем он является), описание продукта, и общую стоимость (как ее рассчитать)?


Слайд 38 Простые запросы
Вычисляемые столбцы:
Показать общую стоимость по каждому

Простые запросы Вычисляемые столбцы:Показать общую стоимость по каждому товару, продукт и

товару, продукт и его описание

SELECT MFR_ID, PRODUCT_ID, DESCRIPTION, (PRICE

* QTY_ON_HAND) AS "count product"
FROM Products;

Слайд 39 Простые запросы
Вычисляемые столбцы:
Что получится, если увеличить

Простые запросы	 Вычисляемые столбцы: Что получится, если увеличить плановый объем продаж

плановый объем продаж для каждого служащего на 3% от

его фактического объема продаж?

Слайд 40 Простые запросы
Вычисляемые столбцы:
Что получится, если увеличить

Простые запросы	 Вычисляемые столбцы: Что получится, если увеличить плановый объем продаж

плановый объем продаж для каждого служащего на 3% от

его фактического объема продаж?
Шаги:
Какая таблица нужна?
Какие столбцы вывести?
Какие столбцы нужны для вычисляемого значения и как его вычислить?

Слайд 41 Простые запросы
Константы:
Список объемов продаж для каждого города
SELECT CITY,

Простые запросыКонстанты:Список объемов продаж для каждого городаSELECT CITY, 'has sales of', SALESFROM OFFICES;

'has sales of', SALES
FROM OFFICES;


Слайд 42 Простые запросы
Дополнительные возможности
SELECT *


Простые запросы	Дополнительные возможности SELECT *

Слайд 43 Простые запросы
Дополнительные возможности
SELECT *
FROM OFFICES;


Простые запросы	Дополнительные возможности SELECT * FROM OFFICES;

Слайд 44 Простые запросы
Дополнительные возможности
SELECT *
DISTINCT

SELECT MGR
FROM

Простые запросы	Дополнительные возможности SELECT * DISTINCTSELECT MGR FROM OFFICES;

OFFICES;


Слайд 45 Простые запросы
Дополнительные возможности
SELECT *
DISTINCT

SELECT DISTINCT MGR

Простые запросы	Дополнительные возможности SELECT * DISTINCTSELECT DISTINCT MGR FROM OFFICES;Удаление дублей


FROM OFFICES;

Удаление дублей


Слайд 46 Простые запросы
Отбор строк (WHERE):
Сравнение (=, ,

Простые запросыОтбор строк (WHERE):Сравнение (=, , =)Проверка на принадлежность диапазонуПроверка наличия

>, >=)
Проверка на принадлежность диапазону
Проверка наличия во множестве
Проверка на

соответствие шаблону
Проверка на равенство значению NULL

Слайд 47 Простые запросы
Сравнение:
Найти имена всех служащих, принятых на работу

Простые запросыСравнение:Найти имена всех служащих, принятых на работу до 2006 года

до 2006 года


Слайд 48 Простые запросы
Сравнение:
Найти имена всех служащих, принятых на работу

Простые запросыСравнение:Найти имена всех служащих, принятых на работу до 2006 годаШаги:Выбрать

до 2006 года
Шаги:
Выбрать таблицу со служащими
Применить фильтр на дату

приема
Выбрать нужные нам строки

Слайд 49 Простые запросы
Сравнение:
Найти имена всех служащих, принятых на работу

Простые запросыСравнение:Найти имена всех служащих, принятых на работу до 2006 годаSELECT

до 2006 года
SELECT NAME
FROM SALESREPS
WHERE HIRE_DATE < TO_DATE('01.01.2016', 'dd.mm.yyyy');
ВАЖНО:

Необходимо крайне аккуратно работать с датами



Слайд 50 Простые запросы
Сравнение с использованием вычисляемых столбцов:
Вывести список офисов,

Простые запросыСравнение с использованием вычисляемых столбцов:Вывести список офисов, фактические объемы продаж

фактические объемы продаж в которых оставили менее 80 процентов

от плановых:
Шаги:
Выбрать таблицу с офисами
Понять какой фильтр необходим
Применить этот фильтр
Выбрать необходимые столбцы


Слайд 51 Простые запросы
Сравнение с использованием вычисляемых столбцов:
Вывести список офисов,

Простые запросыСравнение с использованием вычисляемых столбцов:Вывести список офисов, фактические объемы продаж

фактические объемы продаж в которых оставили менее 80 процентов

от плановых:
SELECT CITY, SALES, TARGET
FROM OFFICES
WHERE SALES < (0.8 * TARGET);

Слайд 52 Простые запросы
Сравнения. Значения NULL.
Сравним
SELECT NAME
FROM SALESREPS
и

Простые запросыСравнения. Значения NULL.Сравним SELECT NAME FROM SALESREPSи два других запроса SELECT NAMEFROM SALESREPSWHERE SALES QUOTA

два других запроса
SELECT NAME
FROM SALESREPS
WHERE SALES

NAME
FROM SALESREPS
WHERE SALES > QUOTA

Слайд 53 Простые запросы
Сравнения. Проверка на принадлежность диапазону.
Найти все заказы,

Простые запросыСравнения. Проверка на принадлежность диапазону.Найти все заказы, сделанные в последнем квартале 2007 года.

сделанные в последнем квартале 2007 года.


Слайд 54 Простые запросы
Сравнения. Проверка на принадлежность диапазону.
Найти все заказы,

Простые запросыСравнения. Проверка на принадлежность диапазону.Найти все заказы, сделанные в последнем

сделанные в последнем квартале 2007 года.
Шаги:
Какая таблица используется?
Какие заказы

необходимо оставить?
Как это перевести на язык сравнений?
Применить фильтр
Выбрать необходимые поля


Слайд 55 Простые запросы
Сравнения. Проверка на принадлежность диапазону.
Найти все заказы,

Простые запросыСравнения. Проверка на принадлежность диапазону.Найти все заказы, сделанные в последнем

сделанные в последнем квартале 2007 года.
SELECT ORDER_NUM, ORDER_DATE, MFR,

PRODUCT, AMOUNT
FROM ORDERS
WHERE ORDER_DATE BETWEEN TO_DATE('2007.10.01', 'yyyy.mm.dd') AND TO_DATE('2007.12.31', 'yyyy.mm.dd');

Слайд 56 Простые запросы
Вывести список служащих, фактические объемы продаж которых

Простые запросыВывести список служащих, фактические объемы продаж которых не попадают в

не попадают в диапазон от 80 до 120 процентов

плана.


Слайд 57 Простые запросы
Вывести список служащих, фактические объемы продаж которых

Простые запросыВывести список служащих, фактические объемы продаж которых не попадают в

не попадают в диапазон от 80 до 120 процентов

плана.
SELECT NAME, SALES, QUOTA
FROM SALESREPS
WHERE SALES NOT BETWEEN (.8 * QUOTA) AND (1.2 * QUOTA);


Слайд 58 Простые запросы
Сравнения. Проверка наличия во множестве.
Вывести список служащих,

Простые запросыСравнения. Проверка наличия во множестве.Вывести список служащих, которые работают в

которые работают в Нью-йорке, Атланте или Денвере
Шаги:
Какая таблица?
Что за

условие ?
Как его применить?
Добавить фильтр
Выделить строки


Слайд 59 Простые запросы
Сравнения. Проверка наличия во множестве.
Вывести список служащих,

Простые запросыСравнения. Проверка наличия во множестве.Вывести список служащих, которые работают в

которые работают в Нью-йорке, Атланте или Денвере

SELECT NAME, QUOTA,

SALES
FROM SALESREPS
WHERE REP_OFFICE IN (11, 13, 22);

Слайд 60 Простые запросы
Проверка на соответствие шаблону. LIKE.
Я помню, что

Простые запросыПроверка на соответствие шаблону. LIKE.Я помню, что у нас был

у нас был клиентом компания начинающаяся на Smith и

затем со вторым словом Corp. Можешь посмотреть полное название? И еще я хочу знать какой у них кредитный лимит.

Слайд 61 Простые запросы
Проверка на соответствие шаблону. LIKE.
Я помню, что

Простые запросыПроверка на соответствие шаблону. LIKE.Я помню, что у нас был

у нас был клиентом компания начинающаяся на Smith и

затем со вторым словом Corp. Можешь посмотреть полное название? И еще я хочу знать какой у них кредитный лимит.
SELECT Company, Credit_limit
FROM Customers
WHERE Company LIKE 'Smith% Corp.';


Слайд 62 Простые запросы
Проверка на соответствие шаблону. LIKE.
Я помню, что

Простые запросыПроверка на соответствие шаблону. LIKE.Я помню, что у нас был

у нас был клиентом компания то ли Smithsen, то

ли Smithson. Мне необходимо знать ее кредитный лимит.


Слайд 63 Простые запросы
Проверка на соответствие шаблону. LIKE.
Я помню, что

Простые запросыПроверка на соответствие шаблону. LIKE.Я помню, что у нас был

у нас был клиентом компания то ли Smithsen, то

ли Smithson. Мне необходимо знать ее кредитный лимит.

SELECT Company, Credit_limit
FROM CUSTOMERS
WHERE COMPANY LIKE 'Smiths_n Corp.';

Слайд 64 Простые запросы
Проверка на соответствие шаблону. LIKE.
Найти товары,

Простые запросыПроверка на соответствие шаблону. LIKE. Найти товары, коды которых начинаются

коды которых начинаются с четырех букв ‘A%BC’

SELECT PRODUCT_ID
FROM products
WHERE

PRODUCT_ID LIKE 'A$%BC%';


Слайд 65 Простые запросы
Проверка на соответствие шаблону. LIKE.
Найти товары,

Простые запросыПроверка на соответствие шаблону. LIKE. Найти товары, коды которых начинаются

коды которых начинаются с четырех букв ‘A%BC’

SELECT ORDER_NUM, PRODUCT
FROM

ORDERS
WHERE PRODUCT LIKE 'A$%BC%' ESCAPE '$';


Слайд 66 Простые запросы
Проверка на равенство NULL

Найти служащего, который еще

Простые запросыПроверка на равенство NULLНайти служащего, который еще не закреплен за офисом

не закреплен за офисом


Слайд 67 Простые запросы
Проверка на равенство NULL

Найти служащего, который еще

Простые запросыПроверка на равенство NULLНайти служащего, который еще не закреплен за

не закреплен за офисом.

SELECT NAME
FROM SALESREPS
WHERE REP_OFFICE IS

NULL;
Также может быть IS NOT NULL

Слайд 68 Простые запросы
Составные условия отбора (AND, OR и NOT)
Найти

Простые запросыСоставные условия отбора (AND, OR и NOT)Найти служащих, у которых

служащих, у которых фактический объем продаж меньше планового и

меньше 300 000$


Слайд 69 Простые запросы
Составные условия отбора (AND, OR и NOT)
Найти

Простые запросыСоставные условия отбора (AND, OR и NOT)Найти служащих, у которых

служащих, у которых фактический объем продаж меньше планового и

меньше 300 000$
SELECT NAME, QUOTA, SALES
FROM SALESREPS
WHERE SALES < QUOTA
AND SALES < 300000.00;

Слайд 70 Простые запросы
Составные условия отбора (AND, OR и NOT)
Найти

Простые запросыСоставные условия отбора (AND, OR и NOT)Найти всех служащих, которые

всех служащих, которые работают в Денвере, Нью-йорке или Чикаго

(их номера 22, 11, 12) или не имеют менеджера и были приняты на работу после июня 2006 года; или у которых продажи превысили плановый объем, но не превысили 600 000$

Слайд 71 Простые запросы
Составные условия отбора (AND, OR и NOT)
Найти

Простые запросыСоставные условия отбора (AND, OR и NOT)Найти всех служащих, которые

всех служащих, которые работают в Денвере, Нью-йорке или Чикаго

(их номера 22, 11, 12) или не имеют менеджера и были приняты на работу после июня 2006 года; или у которых продажи превысили плановый объем, но не превысили 600 000$
SELECT NAME
FROM SALESREPS
WHERE (REP_OFFICE IN (22, 11, 12))
OR (MANAGER IS NULL AND HIRE_DATE >= TO_DATE('2006.06.01', 'yyyy.mm.dd'))
OR (SALES > QUOTA AND NOT SALES > 600000)

Слайд 72 Простые запросы
Сортировка результатов запроса
Вывести список офисов, отсортированный по

Простые запросыСортировка результатов запросаВывести список офисов, отсортированный по фактическим объемам продаж в порядке убывания.

фактическим объемам продаж в порядке убывания.



Слайд 73 Простые запросы
Сортировка результатов запроса
Вывести список офисов, отсортированный по

Простые запросыСортировка результатов запросаВывести список офисов, отсортированный по фактическим объемам продаж

фактическим объемам продаж в порядке убывания.

SELECT CITY, REGION, SALES
FROM

OFFICES
ORDER BY SALES DESC;

Слайд 74 Простые запросы
Сортировка результатов запроса.
Вывести список всех офисов отсортированных

Простые запросыСортировка результатов запроса.Вывести список всех офисов отсортированных по разности между

по разности между фактическими и плановыми объемами продаж в

порядке убывания.


Слайд 75 Простые запросы
Сортировка результатов запроса.
Вывести список всех офисов отсортированных

Простые запросыСортировка результатов запроса.Вывести список всех офисов отсортированных по разности между

по разности между фактическими и плановыми объемами продаж в

порядке убывания.
SELECT CITY, REGION, (SALES - TARGET)
FROM OFFICES
ORDER BY 3 DESC; не желательно
Или
SELECT CITY, REGION, (SALES - TARGET)
FROM OFFICES
ORDER BY (SALES - TARGET) DESC;
Или
SELECT CITY, REGION, (SALES - TARGET) AS diff
FROM OFFICES
ORDER BY diff DESC;



Слайд 76 Простые запросы
Группировка. GROUP BY.
SUM([DISTINCT] значение)
AVG([DISTINCT] значение)
MIN(значение)
MAX(значение)
COUNT([DISTINCT] значение)
COUNT(*)

Простые запросыГруппировка. GROUP BY.SUM([DISTINCT] значение)AVG([DISTINCT] значение)MIN(значение)MAX(значение)COUNT([DISTINCT] значение)COUNT(*)

Слайд 77 Простые запросы
Группировка.
Какой наибольший процент выполнения плана среди

Простые запросыГруппировка. Какой наибольший процент выполнения плана среди всех служащих?

всех служащих?


Слайд 78 Простые запросы
Группировка.
Какой наибольший процент выполнения плана среди

Простые запросыГруппировка. Какой наибольший процент выполнения плана среди всех служащих?SELECT MAX(

всех служащих?

SELECT MAX( 100 * (SALES/QUOTA)) AS max_plan_complete
FROM

SALESREPS;

Слайд 79 Простые запросы
Группировка.
Вычислить среднюю цену товаров от производителя

Простые запросыГруппировка. Вычислить среднюю цену товаров от производителя ACI

Слайд 80 Простые запросы
Группировка.
Вычислить среднюю цену товаров от производителя

Простые запросыГруппировка. Вычислить среднюю цену товаров от производителя ACI.SELECT AVG(PRICE) AS avg_priceFROM ProductsWHERE MFR_ID = 'ACI';

ACI.

SELECT AVG(PRICE) AS avg_price
FROM Products
WHERE MFR_ID = 'ACI';


Слайд 81 Простые запросы
Группировка. Статистические функции и значения NULL
SELECT COUNT(*),

Простые запросыГруппировка. Статистические функции и значения NULLSELECT COUNT(*), COUNT(SALES), COUNT(QUOTA)FROM SALESREPS;Статистическая

COUNT(SALES), COUNT(QUOTA)
FROM SALESREPS;

Статистическая функция COUNT() игнорирует все значения NULL,

содержащиеся в столбцах

Слайд 82 Простые запросы
Группировка. Статистические функции и значения NULL
SELECT COUNT(*),

Простые запросыГруппировка. Статистические функции и значения NULLSELECT COUNT(*), COUNT(SALES), COUNT(QUOTA)FROM SALESREPS;Статистическая

COUNT(SALES), COUNT(QUOTA)
FROM SALESREPS;

Статистическая функция COUNT() игнорирует все значения NULL,

содержащиеся в столбцах

Слайд 83 Простые запросы
Группировка. Статистические функции и значения NULL.

SELECT SUM(SALES),

Простые запросыГруппировка. Статистические функции и значения NULL.SELECT SUM(SALES), SUM(QUOTA), (SUM(SALES) –

SUM(QUOTA), (SUM(SALES) – SUM(QUOTA)), SUM(SALES-QUOTA)
FROM SALESREPS;

ВЫВОД: Необходимо следить за

обработкой NULL в случаях с статистическими функциями

Слайд 84 Простые запросы
Группировка. Запросы с GROUP BY
Какова средняя стоимость

Простые запросыГруппировка. Запросы с GROUP BYКакова средняя стоимость заказа для каждого служащего?

заказа для каждого служащего?


Слайд 85 Простые запросы
Группировка. Запросы с GROUP BY
Какова средняя стоимость

Простые запросыГруппировка. Запросы с GROUP BYКакова средняя стоимость заказа для каждого

заказа для каждого служащего?

SELECT REP, AVG(AMOUNT) AS avg_AMOUNT
FROM ORDERS
GROUP

BY REP;

Слайд 86 Простые запросы
Группировка. Запросы с GROUP BY
Подсчитать общую сумму

Простые запросыГруппировка. Запросы с GROUP BYПодсчитать общую сумму заказов по каждому клиенту для каждого служащего

заказов по каждому клиенту для каждого служащего


Слайд 87 Простые запросы
Группировка. Запросы с GROUP BY
Подсчитать общую сумму

Простые запросыГруппировка. Запросы с GROUP BYПодсчитать общую сумму заказов по каждому

заказов по каждому клиенту для каждого служащего

SELECT REP, CUST,

SUM(AMOUNT) AS sum_amount
FROM ORDERS
GROUP BY REP, CUST;

Слайд 88 Простые запросы
Группировка. Запросы с GROUP BY
Подсчитать общую сумму

Простые запросыГруппировка. Запросы с GROUP BYПодсчитать общую сумму заказов по каждому

заказов по каждому клиенту для каждого служащего и каждого

клиента



Слайд 89 Простые запросы
Группировка. Запросы с GROUP BY
Подсчитать общую сумму

Простые запросыГруппировка. Запросы с GROUP BYПодсчитать общую сумму заказов по каждому

заказов по каждому клиенту для каждого служащего и каждого

клиента

SELECT REP, CUST, SUM(AMOUNT) AS sum_AMOUNT
FROM ORDERS
GROUP BY CUBE (REP, CUST);



Слайд 90 Простые запросы
Группировка. Запросы с GROUP BY
Какова средняя стоимость

Простые запросыГруппировка. Запросы с GROUP BYКакова средняя стоимость заказа для каждого

заказа для каждого служащего из числа тех, у которых

общая стоимость заказов превышает 30000$?



  • Имя файла: bazy-dannyh.pptx
  • Количество просмотров: 92
  • Количество скачиваний: 0