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

Книгу можно купить на ЛитРес.
Всего за 239.9 руб. Купить полную версию
Шрифт
Фон

Стандарт SQL определяется Американским национальным институтом стандартов (American National Standards Institute, ANSI) и в данное время также принимается Международной организацией по стандартизации (International Organization for Standardization, ISO). Названия этих стандартов состоят из аббревиатуры SQL и года, когда они были приняты. К настоящему времени известны следующие стандарты: SQL-86, SQL-89, SQL-92, SQL:1999, SQL:2003, SQL:2006, SQL:2008, SQL:2011, SQL:2016, SQL:2019. При этом реализация SQL, используемой в конкретной версии СУБД, лишь отчасти соответствует тому или иному стандарту. Например, в содержится описание соответствия версии SQL, используемой в СУБД Oracle 18, стандартам языка SQL.

Операторы SQL разделены на три группы:

Операторы манипулирования данными (Data Manipulation Language, DML) предназначены для выборки и изменения данных: SELECT, INSERT, UPDATE, MERGE, DELETE.

Операторы определения данных (Data Definition Language, DDL) предназначены для создания и модификации объектов базы данных. Основными операторами этой группы являются: CREATE, ALTER, DROP.

Операторы управления данными (Data Control Language, DCL) предназначены для предоставления пользователям прав на выполнение определенных действий с базой данных: GRANT, REVOKE.

Глава 2. Структура оператора SELECT и формирование условий выбора

Оператор SELECT

Согласно классической классификации оператор SELECT относится к операторам DML. Однако в Oracle версии SQL к операторам DML относят только INSERT, UPDATE, MERGE и DELETE, а оператор SELECT выделен в отдельную группу.

В общем виде структура оператора SELECT может быть представлена в следующем виде:

SELECT [ALL|DISTINCT] {список столбцов или выражений}

FROM {список таблиц}

[WHERE {условия выбора}]

[ORDER BY {столбцы сортировки [ASC|DESC]]}

[GROUP BY {столбцы группировки}]

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

(Квадратными скобками отмечены необязательные элементы.)

Дадим предварительное описание элементов данного оператора.

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

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

https://docs.oracle.com/en/database/oracle/oracle-database/18/sqlrf/Oracle-and-Standard-SQL.html

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

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

В предложении ORDER BY указываются имена столбцов, по значению которых следует упорядочить результат выполнения запроса. По умолчанию строки упорядочиваются в порядке возрастания значений столбца. Для сортировки в порядке убывания после имени столбца следует указать параметр DESC. Если указать несколько столбцов, то результат будет упорядочиваться сначала по значению первого столбца; строки, имеющие одинаковые значения первого столбца, упорядочиваются по значению второго столбца, и так далее.

В предложении GROUP BY можно указать столбцы, по которым следует осуществить группировку. Группировка состоит в том, что несколько строк, имеющих совпадающие значение столбцов, по которым осуществляется группировка, объединяются в одну строку. Обычно группировка используется в запросах, использующих агрегатные функции, например: 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

Ваша оценка очень важна

0
Шрифт
Фон

Помогите Вашим друзьям узнать о библиотеке

Скачать книгу

Если нет возможности читать онлайн, скачайте книгу файлом для электронной книжки и читайте офлайн.

fb2.zip txt txt.zip rtf.zip a4.pdf a6.pdf mobi.prc epub ios.epub fb3