Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Элементы языка SQL.docx
Скачиваний:
6
Добавлен:
22.11.2019
Размер:
40.95 Кб
Скачать

Используемые термины и обозначения

Ключевые слова – это используемые в выражениях SQL слова, имеющие определенное назначение. Команды или предложения являются инструкциями с помощью которых SQL обращается к БД. Команды состоят из одной или более логических частей называемых предложениями. Предложения начинаются ключевым словом и состоят из ключевых слов и аргументов.

В описании синтаксиса команд SQL используются следующие обозначения:

  1. [] - квадратные скобки – указывают необязательный элемент синтаксической конструкции.

  2. … - многоточие – определяет, что выражение предшествующее ему может повторяться любое число раз.

  3. {} – фигурные скобки – объединяют последовательность элементов в логическую группу, один из элементов которой должен обязательно использоваться.

  4. | - вертикальная черта – указывает, что часть определения, следующая за этим символом, является одним из возможных вариантов.

  5. <> - в угловые скобки заключаются обычные элементы, объясняемые по мере того как они вводятся.

Выборка данных с использование предложения select

Все запросы на получение любого количества данных из одного или нескольких отношений выполняются с помощью предложения SELECT. В общем случае результатом реализации предложения SELECT является отношение. К этому новому отношению может быть снова применена операция SELECT и т.д. Т.е. такие операции могут быть вложены друг в друга.

Предложение SELECT может использоваться как:

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

  2. В качестве вложенного подзапроса.

  3. Фраза выбора в командах определения схемы данных и модификации отношений.

  4. Средство присвоения глобальным переменным значений кортежей сформированного отношения (Into-фраза).

Простейшие select-запросы

Упрощенный синтаксис оператора Select выглядит следующим образом:

Select [distinct] <список атрибутов >

From <список таблиц>

[Where <условие выборки>]

[Order by <список атрибутов>]

[Group by <список атрибутов>]

[Having <условие>]

[Union <выражение с операндом Select>];

В квадратных скобках указаны элементы, которые могут отсутствовать в запросе. Ключевое слово Select сообщает БД, что данное предложение является запросом на извлечение информации. После Select через запятую перечисляются наименования полей, содержимое которых запрашивается. Обязательным ключевым словом в предложении-запросе SELECT является слово From. За ним указывается список разделенных запятыми имен таблиц, из которых извлекается информация. Например:

Select name, surname

From student;

Select * -выводит все атрибуты.

Получаемые в результате выполнения SQL-запроса таблицы не в полной мере отвечают определению реляционного отношения. Т.е. в них могут оказаться кортежи с одинаковым значением атрибутов. Например: получить список названий городов, где проживают студенты, сведения о которых находятся в таблице student.

Select city

From student;

Для исключения из результата SELECT-запроса повторяющихся записей используется ключевое слово distinct. Если запрос SELECT извлекает множество полей, то distinct исключает дубликаты строк, в которых значения всех выбранных строк идентичны.

Select distinct city

From student;

Ключевое слово all в отличие от distinct оказывает противоположное действие, т.е. при его использовании повторяющиеся строки включаются в состав выходных данных.

Использование в операторe Select предложения определяемого ключевым слово Where позволяет задавать выражение условия (предикат) принимающее значение Истина или Ложь для значений полей строк таблиц к которым обращается оператор Select. Предложение Where определяет, какие строки должны быть выбраны. В таблицу являющуюся результатом запроса включаются только те строки, в которых предикат, указанный в предложении-Where принимает значение Истина.

Пример: написать запрос выполняющий выборку имен всех студентов с фамилией Петров, сведения о которых содержатся в таблице student.

Select name, surname

From student

Where surname = 'Петров';

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

Select name, surname

From student

Where kurs = 3 and stipend>0;