Список элементов выборки Назад В начало Вперед

Элементы выборки разделяются запятой:

<список-элементов-выборки> =
  <элемент-выборки> { , <элемент-выборки> }

<элемент-выборки> - описание одного элемента выборки:

<элемент-выборки> = * | <имя-таблицы-БД>.*
  | <выражение> [ (<атрибуты>) ]

* - извлекаются все поля из тех таблиц, которые указаны в секции <список-таблиц-для-выборки>.

<имя-таблицы-БД>.* - извлекаются все поля из указанной таблицы.

<выражение> - элементом выборки может быть любое арифметическое выражение со следующими операндами:

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

<атрибуты> = <атрибут> { , <атрибут> }

<атрибут> - элемента выборки:

<атрибут> =
	fieldname = <имя-поля-логической-таблицы>
  | fieldtitle = <заголовок-поля-логической-таблицы>
  | fieldlenght = <длина-поля-логической-таблицы>

<имя-поля-логической-таблицы> - идентификатор поля.

<заголовок-поля-логической-таблицы> - строка заголовка поля.

<длина-поля-логической-таблицы> - целое число.

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

При генерации Pascal-заготовок константа для номера поля формируется путем добавления префикса "fn" к имени поля.

Примеры

Пример 1

select Employee.*
		where Employee.status = 'П';

В примере выбираются все сотрудники, работающие на постоянной основе.

Пример 2

select if( status = 'П',
		salary+premium, salary ),* from Employee;

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