Основные объекты: Запросы. Часть 1. О запросах в системе 1С

Варфоломеич запросил сто рублей.
Память брата посетитель расценивал
значительно ниже, рублей в тридцать.
Согласились на пятидесяти.
(И. Ильф, Е. Петров. Двенадцать стульев)

Согласно “Википедии”, запрос представляет собой формулирование некоторой информационной необходимости пользователем некоторой базы данных (обычно речь идет о реляционных базах данных, состоящих из ряда взаимосвязанных таблиц). Результатом запроса являются определенные данные, выбранные из базы данных (выборка).

Для составления запроса обычно используется специально разработанный стандартный язык запросов SQL. SQL (англ. Structured Query Language – язык структурированных запросов) – универсальный информационно-логический компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных.

Желающим подробнее узнать о стандарте SQL и работе с ним можно порекомендовать следующую литературу:
- Грабер М. Введение в SQL. - М.: Лори, 2008;
- Моисеенко С. SQL: Задачи и решения: Учебник (http://www.sql-tutorial.ru/ru/content.html);
- Кузнецов С.Д. Введение в стандарты языка баз данных SQL (http://www.citforum.ru/database/sqlbook/index.shtml);
- Кириллов В.В., Громов Г.Ю. Структуризированный язык запросов (SQL): Учебное пособие (http://www.citforum.ru/database/sql_kg/index.shtml).

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

В системе 1С для выполнения запросов используется вариант языка SQL в русифицированном и несколько модифицированном виде (хотя стандартные англоязычные выражения и инструкции также поддерживаются). Ниже приводится сравнительная таблица инструкций языка запросов 1С и стандартного SQL.

Сравнительная таблица языка запросов 1С и стандартного SQL

Назначение

Инструкции SQL

Инструкции 1С

Где используется

Выборка определенных полей

SELECT

ВЫБРАТЬ

Оператор выборки

Указание таблиц – источников данных

FROM

ИЗ

Оператор выборки...

Задание условий отбора

WHERE

ГДЕ

Оператор выборки...

Группировка по заданным полям (часто с использованием агрегатных функций (SUM, AVG, COUNT, MIN, MAX))

GROUP BY

СГРУППИРОВАТЬ ПО

Запрос с группировкой

Агрегатные функции

SUM
MIN
MAX
AVG
COUNT

СУММА
МИНИМУМ
МАКСИМУМ
СРЕДНЕЕ
КОЛИЧЕСТВО

Запрос с группировкой

Отбор групп

HAVING

ИМЕЮЩИЕ

Запрос с группировкой

Сортировка (упорядочивание) результата

ORDER BY

УПОРЯДОЧИТЬ ПО

 

Упорядочивание по иерархии

В ИЕРАРХИИ

Запрос с иерархией

Соединения таблиц, в том числе левые и правые внешние соединения

INNER JOIN... ON


LEFT JOIN... ON


RIGHT JOIN... ON


FULL JOIN... ON (или OUTER JOIN... ON)

ВНУТРЕННЕЕ СОЕДИНЕНИЕ... ПО

ЛЕВОЕ СОЕДИНЕНИЕ... ПО

ПРАВОЕ СОЕДИНЕНИЕ... ПО

ПОЛНОЕ ВНЕШНЕЕ СОЕДИНЕНИЕ... ПО

Запрос с несколькими таблицами

Подведение итогов

ИТОГИ ... ПО
ОБЩИЕ

 

Запрос с количественными параметрами

Объединения нескольких запросов

UNION

ОБЪЕДИНИТЬ

Сложный запрос

Различные значения

DISTINCT

РАЗЛИЧНЫЕ

 

Операнд операции сравнения

LIKE

ПОДОБНО

Запрос с использованием шаблона

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