Описание запроса
Как уже было сказано, в тексте запроса должна обязательно присутствовать секция описания запроса, в которой определяются:
• поля, которые будут содержаться в результате запроса;
• источники данных запроса - исходные таблицы;
• условия, влияющие на выборку данных в запросе;
• порядок группировки результатов запроса.
Секция описания запроса состоит из нескольких взаимосвязанных предложений:
ВЫБРАТЬ [РАЗЛИЧНЫЕ] [ПЕРВЫЕ <Количество>]
<Список полей выборки>
[ИЗ <Список источников>]
[ГДЕ <Условие отбора>]
[СГРУППИРОВАТЬ ПО <Поля группировки>]
[ИМЕЮЩИЕ <Условие отбора>]
[ДЛЯ ИЗМЕНЕНИЯ [[OF] <Список таблиц верхнего уровня>]]
Описание запроса начинается с обязательного ключевого слова ВЫБРАТЬ.
С помощью ключевого слова РАЗЛИЧНЫЕ можно указать, что в результат не должны попадать повторяющиеся строки.
Конструкция ПЕРВЫЕ <Количество>
позволяет задать предельное количество строк в результате запроса. Будут отобраны самые первые (в соответствии с правилами упорядочивания результатов запроса) строки. <Количество> задается целым числом.
В секции <Список полей выборки> описываются поля, которые должны содержаться в результате запроса. Подробно правила описания полей выборки рассматриваются на стр. 300.
В предложении ИЗ <Список источников> указываются источники данных - таблицы информационной базы, содержимое которых обрабатывается в запросе. Описание источников может быть опущено только в том случае, если они полностью определены в списке полей выборки. Правила описания источников данных запроса рассматриваются на стр. 305.
Предложение ГДЕ <Условие отбора> позволяет отфильтровать результат запроса. В результат попадают только те записи, для которых указанное условие оказывается истинным. Правила описания условий отбора рассматриваются на стр. 315.
Предложение ДЛЯ ИЗМЕНЕНИЯ предназначено для указания необходимости блокировки считываемых в транзакции данных.
Предложение СГРУППИРОВАТЬ позволяет описать порядок группировки результатов запроса. Подробно группировка рассматривается на стр. 316.
Предложение ИМЕЮЩИЕ позволяет накладывать условия на результаты группировки. Описано на стр. 318.
Во всех примерах запросов в данной главе приводится текст запроса и результат запроса. Подразумевается, что текст запроса передается в качестве параметра методу Выполнить объекта Запрос.
Приведем пример достаточно простого запроса, состоящего из одного оператора ВЫБРАТЬ и списка полей выборки.
Пример:
//В отчет необходимо вывести список товарных накладных.
Выбрать Документ.РасходнаяНакладная.Ссылка
Результат запроса:
Ссылка |
Расходная накладная 00005 от 01.03.2002 20:58:28 |
Расходная накладная 00004 от 01.03.2002 20:50:40 |
Расходная накладная 00003 от 23.02.2002 0:00:00 |
Расходная накладная 00002 от 15.01 2002 0:00:01 |
Расходная накладная 00001 от 25.02 2002 0:00:00 |
Расходная накладная 00009 от 01.03 2002 10:10:22 |
Расходная накладная 00016 от 07.07 2002 0:00:00 |