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

Читать онлайн книгу Основы программирования в СУБД Oracle. SQL+PL/SQL. - О. А. Ткачев страница 9

СКАЧАТЬ следует осуществить группировку. Группировка состоит в том, что несколько строк, имеющих совпадающие значение столбцов, по которым осуществляется группировка, объединяются в одну строку. Обычно группировка используется в запросах, использующих агрегатные функции, например: Sum (), Max ().

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

      При изучении SQL следует обратить внимание на то, что для формирования запроса необходимо:

      – определить структуру запроса, соответствующую заданной задаче обработки данных;

      – синтаксически правильно записать запрос.

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

      В своей простейшей форме оператор SELECT должен включать в себя следующее:

      – предложение SELECT, где указываются имена столбцов, значение которых будет отображаться в результате выполнения запроса;

      – предложение FROM, в котором указывается имя таблицы, содержащей данные.

      SELECT {список столбцов}

      FROM {таблица};

      Пример 2.1. Вывод содержимого одного столбца

      SELECT employee_id

      FROM Employees;

      Пример 2.2. Вывод содержимого нескольких столбцов

      SELECT employee_id, first_name, last_name, department_id

      FROM Employees;

      Если в качестве результата выполнения запроса нужно вывести значения всех столбцов, то вместо списка столбцов указывается символ *.

      Пример 2.3. Вывод значений всех столбцов

      SELECT *

      FROM Employees;

      Исключение дублирования данных

      Рассмотрим запрос, который выводит коды должностей сотрудников.

      Пример 2.4. Вывод значений столбца job_id

      SELECT job_id

      FROM Employees;

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

      Пример 2.5 Вывод значений столбца job_id без дублирования

      SELECT DISTINCT job_id

      FROM Employees;

      Условия выбора

      Для того чтобы выводить только те данные, которые удовлетворяют определенным условиям, оператор SELECT должен содержать предложение WHERE, которое содержит условное выражение.

      SELECT {список столбцов}

      FROM {таблица}

      WHERE СКАЧАТЬ