Базы данных. Уровни данных. Нормальные формы схем отношений. Аксиома дополнения (добавления). Способы размещения с применением Хэш-функции, страница 19

(2)  [[INTO <получатель> ] / [TO FILE <файл> [ADDITIVE]]]

(3)  [NOCONSOLE] [PLAIN] [NOWAIT] [WHERE] <условия связи> [AND <условия связи>…] [AND/OR <условия отбора>…]]]

(4)  [GROUP BY <колонка> [, <колонка> [,…]][HAVING BY <условие отбора>][ORDER BY <колонка> [ASC/DESC][, <колонка> [ASC/DESC][,…]]]]

(1)Указание результатов выборки и источников данных. Здесь указывается, что и откуда берется выборочно. Перед словом FROM перечисляются отбираемые выражения, а после перечисляются имена баз, из которых берутся данные. Выражение может быть полем записи из БД, константой, функцией от переменной и т. д. Если выражение является именем поля, то оно может быть создано. Псевдонимом может быть любое другое имя, которое может быть присвоено команде SELECT. Это задаваемое временное имя указывается в опциях «псевдоним» после слова FROM. За пределами команды SELECT такое назначение никаких последствий не имеет. Если необходимо построить выборку и всех полей БД, вместо их перечня можно использовать *. В результате выполненной выборки получается совокупность колонок, заголовками которых могут быть имена полей. Если имена колонок совпадают, то такие колонки получают имена, к которым присоединяется одна из букв по алфавиту (TAB_A, TAB_B, TAB_C …).

Аналогичным образом даются имена колонкам, полученным в результате вычисления выражения. Их имена состоят из слова EXP и послед. чисел (EXP_1, EXP_2). Исключение представляют выражения, использующие собственные функции SQL (MIN, MAX). Имена колонок в этом случае будут включать имена функций. Если не устраивают имена, формируемые по умолчанию, то можно создать свое имя с помощью оператора

<выражение> AS <новое имя колонки>

включение опции  исключает возможность вывода одинаковых строк выборки.

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

INTO <получатель> ARRAY <массив> CURSOR <имя курсора> DBF / TABLE <имя>

Выборка не выдается на экран – NO CONSOLE. PLANE - заголовки колонок не выделяются. NOWAIT – не делаются паузы при заполнении экрана. ADDITIVE – выборка будет добавлена в конец существующего файла без его перезаписи.

(3)Критерии отбора данных.

Условия связи применяются в случае, если выборка делается более чем из одной БД и указывается критерий, которому должны отвечать поля из разных БД. В условии связи указываются поля из разных БД. Допускается несколько критериев, соединенных AND и операторов =, <, >, <=, >=. Условие отбора строится аналогично, но из выражения только для одной БД. Допускается использовать OR, NOT. Условия могут содержать несколько операторов SQL.

LIKE – позволяет построить условие сравнения по шаблону.

<выражение> LIKE <шаблон>

При использовании LIKE используются “_”, “%”. “_” указывает единственный неопределенный символ в строке; “%” указ. любое их количество. <выражение> BETWEEN <нижнее значение> AND <верхнее значение> - проверяет, находится ли выражение в указанном диапазоне.

<выражение> IN (<выражение>, <выражение> …) – проверяет, находится ли выражение, стоящее слева от  IN,среди перечисленных справа от него.

(4)Группирование данных.

Лекция 17.11

Group by<kolonka>[,<kolonka>,…] в этой опции зад. Колонки ,по кот. Производим группирование вх. Данных. все записи базы для которых зн-я колонок совпадают,отобр в выборке одной строкой

HAVING<условие отбора>-критерии отбора данных

ORDER BY<колонка>[ASC/DESC][,<колонка>[ASC/DESC]…]-

Задаёт сортировку по заданной колонке ASC по возрастанию ,DESC-по убыванию.Df сортировка вып по возрастании.