
- •Инструкция select
- •Результаты запроса на выборку
- •Простые запросы
- •Вычисляемые столбцы
- •Выборка всех столбцов (инструкция select*)
- •Повторяющиеся строки (предикат distinct)
- •Отбор строк (предложение where)
- •Условия отбора: сравнение
- •Проверка на принадлежность к диапазону значений
- •Проверка на членство в множестве
- •Сортировка результатов запроса (orderby)
- •Прочие объединения таблиц по равенству
Инструкция select
1. Вывести список офисов с плановыми и фактическими объемами продаж
SELECT CITY, TARGET, SALES
FROM OFFICES
2. Вывести список офисов, расположенных в восточном регионе, с плановыми и фактическими объемами продаж.
SELECT CITY, TARGET, SALES
FROM OFFICES
WHERE REGION = ‘Eastern’
3. Вывести список офисов, расположенных в восточном регионе, в которых фактические объемы продаж превысили плановые; отсортировать список в алфавитном порядке по названиям городов.
SELECT CITY, TARGET, SALES
FROM OFFICES
WHERE REGION = ‘Eastern’
AND SALES > TARGET
ORDER BY CITY
4. Каковы плановые значения плановых и фактических объемов продаж по всем офисам, расположенным в восточном регионе?
SELECT AVG(TARGET), AVG(SALES)
FROM OFFICES
WHERE REGION = ‘Eastern’
Результаты запроса на выборку
1. Вывести список имен, офисов и дат приема на работу всех служащих
SELECT NAME, REP_OFFICE, HIRE_DATE
FROM SALESREPS
2. Как зовут, а также каковы плановый и фактический объемы продаж служащего с идентификатором 103?
SELECT [NAME], QUOTA, SALES
FROM SALESREPS
WHERE EMPL_NUM = 107
3. Каково среднее значение фактических объемов продаж по всем служащим компании?
SELECT AVG(SALES)
FROM SALESREPS
4. Вывести список имен и дат приема на работу всех служащих, фактический объем продаж которых превышает $500000.
SELECT [NAME], REP_OFFICE, HIRE_DATE
FROM SALESREPS
WHERE SALES > 500000.00
5. Вывести список служащих с их плановыми объемами продаж и идентификаторами менеджеров.
SELECT [NAME], QUOTA, MANAGER
FROM SALESREPS
Простые запросы
Вывести для каждого из офисов список городов, регионов и объемов продаж
SELECT CITY, REGION, SALES
FROM OFFICES
Вычисляемые столбцы
Выдать для каждого офиса список городов, регионов и сумм, на которые был перевыполнен/недовыполнен план по продажам
SELECT CITY, REGION, (SALES – TARGET)
FROM OFFICES
Показать общую стоимость по каждому товару.
SELECT MFR_ID, PRODUCT_ID, DESCRIPTION, (QTY_ON_HAND*PRICE)
FROM PRODUCTS
Что получится, если увеличить плановый объем продаж для каждого служащего на 3% от его фактического объема продаж?
SELECT [NAME], QUOTA, (QUOTA + (.03 * SALES))
FROM SALESREPS
Вывести список имен, а также месяц и год приема на работу всех служащих.
SELECT [NAME], MONTH(HIRE_DATE), YEAR(HIRE_DATE)
FROM SALESREPS
Вывести список объемов продаж для каждого города.
SELECT CITY, ‘has sales of’, SALES
FROM OFFICES
Выборка всех столбцов (инструкция select*)
Показать все данные, содержащие в столбце OFFICES
SELECT *
FROM OFFICES
Повторяющиеся строки (предикат distinct)
Вывести список идентификаторов всех менеджеров офисов.
SELECT DISTINCT MGR
FROM OFFICES
Отбор строк (предложение where)
Перечислить офисы, в которых фактические объемы продаж превысили плановые.
SELECT CITY, SALES, TARGET
FROM OFFICES
WHERE SALES > TARGET
Условия отбора: сравнение
1. Найти имена всех служащих, принятых на работу до 1988 года.
SELECT [NAME]
FROM SALESREPS
WHERE HIRE_DATE < ’01-JAN-88’
Вывести список офисов, фактические объемы продаж в которых составили менее 80% от плановых
SELECT CITY, SALES, TARGET
FROM OFFICES
WHERE SALES < (.8 * TARGET)
Вывести список офисов, менеджером которых не является служащий с идентификатором 108
SELECT MGR
FROM OFFICES
WHERE MGR <> 108
Узнать имя и лимит кредита клиента с идентификатором 2107
SELECT COMPANY, CREDIT_LIMIT
FROM CUSTOMERS
WHERE CUST_NUM = 2107
Вывести список служащих, превысивших плановый объем продаж.
SELECT [NAME]
FROM SALES > QUOTA