О. Ткачев - Основы программирования в СУБД Oracle. SQL+PL/SQL.

Здесь есть возможность читать онлайн «О. Ткачев - Основы программирования в СУБД Oracle. SQL+PL/SQL.» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. ISBN: , Жанр: Прочая околокомпьтерная литература, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Основы программирования в СУБД Oracle. SQL+PL/SQL.: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Основы программирования в СУБД Oracle. SQL+PL/SQL.»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

В этой книге рассмотрены Oracle версия SQL и его расширение PL/SQL, содержится описание синтаксиса и правил использования всех основных конструкций этих языков. Излагаемый материал иллюстрируется многочисленными примерами, позволяющими понять, при решении каких задач целесообразно использовать рассматриваемый элемент языка.Книга может быть использована как в учебном процессе, при изучении дисциплины «Базы данных» студентами IT-специальностей, так и для самостоятельного освоения SQL и PL/SQL.

Основы программирования в СУБД Oracle. SQL+PL/SQL. — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Основы программирования в СУБД Oracle. SQL+PL/SQL.», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

SELECT {список столбцов*), {агрегатные функции}

FROM {таблица}

WHERE {условия}

GROUP BY {список столбцов*}

HAVING {условия на группу};

Списки столбцов в предложениях SELECT и GROUP BY должны совпадать.

Предложение GROUP BY разбивает данные на группы, и запрос выводит обобщенные данные о каждой группе.

Рассмотрим примеры задач, для решения которых необходимо использовать группировку и агрегатные функции.

Пример 4.7. Для каждого отдела определить суммарную зарплату

SELECT department_id, SUM (salary) AS SUM_salary

FROM Employees

GROUP BY department_id

ORDER BY department_id;

Пример 48 Для каждого отдела определить суммарную зарплату с учетом - фото 114

Пример 4.8. Для каждого отдела определить суммарную зарплату с учетом комиссионных

SELECT department_id, SUM (salary* (1+NVL (commission_pct,0)))

As sum_sal

FROM Employees

GROUP BY department_id

ORDER BY department_id;

Пример 49 Для каждого отдела определить суммарную длину имен столбца - фото 115

Пример 4.9. Для каждого отдела определить суммарную длину имен (столбца first_name)

SELECT department_id, SUM (LENGTH (first_name)) As sum_f_nam

FROM Employees

GROUP BY department_id

ORDER BY department_id;

Группировка по нескольким столбцам В предложении GROUP BY можно указать - фото 116

Группировка по нескольким столбцам

В предложении GROUP BY можно указать несколько столбцов. В этом случае группу образуют строки с совпадающими значениями всех столбцов, по которым осуществляется группировка. Рассмотрим задачи, в которых требуется группировка по нескольким столбцам.

Сначала рассмотрим запрос, который содержит типичную ошибку при решении задач, требующих группировки по нескольким столбцам.

Пример 4.10а. Для каждого отдела определить должности и количество сотрудников, занимающих эту должность (содержит ошибку)

SELECT department_id, job_id, count (*)

FROM employees

GROUP BY department_id;

Причина ошибки: при наличии группировки предложение SELECT может содержать только столбцы, по которым осуществляется группировка и агрегатные функции.

Пример 4.10б. Для отделов 30 и 50 определить должности и количество сотрудников, занимающих каждую должность

SELECT department_id, job_id, count (*)

FROM Employees

WHERE department_id IN (30,50)

GROUP BY department_id, job_id

ORDER BY department_id;

Пример 411 Для отделов номер которых меньше 50 вывести рейтинги которые - фото 117

Пример 4.11. Для отделов, номер которых меньше 50, вывести рейтинги, которые имеют сотрудники этого отдела, их количество и суммарную зарплату

SELECT department_id, rating_e, count (*),sum (salary)

FROM Employees

WHERE department_id <= 50

GROUP BY department_id, rating_e

ORDER BY department_id;

Использование условий на группу Условия на группу указываются в предложении - фото 118

Использование условий на группу

Условия на группу указываются в предложении HAVING.

Пример 4.12. Вывести суммарную зарплату для тех отделов, у которых суммарная зарплата превышает 50 000

SELECT department_id, SUM (salary)

FROM Employees

GROUP BY department_id

HAVING SUM (salary)> 50000;

Условие выборки может быть проверено до группировки В этом случае сначала - фото 119

Условие выборки может быть проверено до группировки. В этом случае сначала выбираются строки, удовлетворяющие условию, а потом осуществляется группировка полученных данных. Для полученных групп можно указать условие в предложении HAVING. В результат запроса попадут только те группы, которые удовлетворяют этому условию.

Пример 4.13. Вывести должности и количество сотрудников, которые получают зарплату более 10 000

SELECT department_id, SUM (salary)

FROM Employees

GROUP BY department_id

HAVING SUM (salary)> 50000;

К условиям предыдущей задачи можно добавить условие вывести только те - фото 120

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

Пример 4.14. Вывести должности и количество сотрудников, которые получают зарплату более 10 000, которые занимают более одного сотрудника, упорядочив их в порядке убывания количества сотрудников

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Основы программирования в СУБД Oracle. SQL+PL/SQL.»

Представляем Вашему вниманию похожие книги на «Основы программирования в СУБД Oracle. SQL+PL/SQL.» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Основы программирования в СУБД Oracle. SQL+PL/SQL.»

Обсуждение, отзывы о книге «Основы программирования в СУБД Oracle. SQL+PL/SQL.» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x