+375 29 605 73 35
Заказать звонок
Минск, ул. Татарская 3, этаж 3, офис 315
Сопровождение информационных систем
Компания
  • О компании
  • Клиенты и партнеры
  • Сотрудники
  • Отзывы
  • Вакансии
  • Реквизиты
1С Предприятие
  • Автоматизация 1С : Предприятия 8
    • Предпроектное обследование
    • Разработка конфигурации с нуля
    • Внедрение 1С : Предприятие 8
    • Доработка и настройка 1С
  • Внедрение 1С
    • Комплекс работ по адаптации и настройке программных продуктов «1С
  • Демонстрация типовых решений 1с для Беларуси
    • 1С:Управление торговлей для Беларуси, редакция 3.4
    • 1С:Розница для Беларуси, редакция 2.2
    • 1С:Зарплата и Управление Персоналом для Беларуси, редакция 3.0
    • 1С:Бухгалтерия для Беларуси, редакция 2.1
    • 1С УНФ (Управление нашей фирмой)
    • 1С КА 2.4 ( Комплексная автоматизация)
  • Кейсы 1С
    • Расширенный список справочника контрагентов для Управление торговлей для Беларуси, редакция 3
    • Расширенный список справочника Контрагентов для Бухгалтерии для Беларуси, редакция 2
    • Расширенный список справочника Контрагентов для УТ ХьюменСистем
    • Внедрение программного обеспечения «1С: Предприятие 8. Бухгалтерия сельскохозяйственного предприятия»
    • Интеграция с маркетплейсами озон и валберис
  • Консультация по 1С
    • Разовое консультация ( 75.00 руб.коп)
    • Тарифные планы на сопровождение информационных систем
  • Построение аналитики и дашбордов
    • 1С Аналитика
    • Построение аналитики на Power BI
  • Продажа Битрикс24
Битрикс24
  • Готовые кейсы для битрикс24
  • Новости и статьи Битрик24
  • Попробовать бесплатно битрикс 24
  • Программы 1С
Информация
  • Новости
  • Статьи
Контакты
    Сопровождение информационных систем
    Компания
    • О компании
    • Клиенты и партнеры
    • Сотрудники
    • Отзывы
    • Вакансии
    • Реквизиты
    1С Предприятие
    • Автоматизация 1С : Предприятия 8
      • Предпроектное обследование
      • Разработка конфигурации с нуля
      • Внедрение 1С : Предприятие 8
      • Доработка и настройка 1С
    • Внедрение 1С
      • Комплекс работ по адаптации и настройке программных продуктов «1С
    • Демонстрация типовых решений 1с для Беларуси
      • 1С:Управление торговлей для Беларуси, редакция 3.4
      • 1С:Розница для Беларуси, редакция 2.2
      • 1С:Зарплата и Управление Персоналом для Беларуси, редакция 3.0
      • 1С:Бухгалтерия для Беларуси, редакция 2.1
      • 1С УНФ (Управление нашей фирмой)
      • 1С КА 2.4 ( Комплексная автоматизация)
    • Кейсы 1С
      • Расширенный список справочника контрагентов для Управление торговлей для Беларуси, редакция 3
      • Расширенный список справочника Контрагентов для Бухгалтерии для Беларуси, редакция 2
      • Расширенный список справочника Контрагентов для УТ ХьюменСистем
      • Внедрение программного обеспечения «1С: Предприятие 8. Бухгалтерия сельскохозяйственного предприятия»
      • Интеграция с маркетплейсами озон и валберис
    • Консультация по 1С
      • Разовое консультация ( 75.00 руб.коп)
      • Тарифные планы на сопровождение информационных систем
    • Построение аналитики и дашбордов
      • 1С Аналитика
      • Построение аналитики на Power BI
    • Продажа Битрикс24
    Битрикс24
    • Готовые кейсы для битрикс24
    • Новости и статьи Битрик24
    • Попробовать бесплатно битрикс 24
    • Программы 1С
    Информация
    • Новости
    • Статьи
    Контакты
      Сопровождение информационных систем
      • Компания
        • Назад
        • Компания
        • О компании
        • Клиенты и партнеры
        • Сотрудники
        • Отзывы
        • Вакансии
        • Реквизиты
      • 1С Предприятие
        • Назад
        • 1С Предприятие
        • Автоматизация 1С : Предприятия 8
          • Назад
          • Автоматизация 1С : Предприятия 8
          • Предпроектное обследование
          • Разработка конфигурации с нуля
          • Внедрение 1С : Предприятие 8
          • Доработка и настройка 1С
        • Внедрение 1С
          • Назад
          • Внедрение 1С
          • Комплекс работ по адаптации и настройке программных продуктов «1С
        • Демонстрация типовых решений 1с для Беларуси
          • Назад
          • Демонстрация типовых решений 1с для Беларуси
          • 1С:Управление торговлей для Беларуси, редакция 3.4
          • 1С:Розница для Беларуси, редакция 2.2
          • 1С:Зарплата и Управление Персоналом для Беларуси, редакция 3.0
          • 1С:Бухгалтерия для Беларуси, редакция 2.1
          • 1С УНФ (Управление нашей фирмой)
          • 1С КА 2.4 ( Комплексная автоматизация)
        • Кейсы 1С
          • Назад
          • Кейсы 1С
          • Расширенный список справочника контрагентов для Управление торговлей для Беларуси, редакция 3
          • Расширенный список справочника Контрагентов для Бухгалтерии для Беларуси, редакция 2
          • Расширенный список справочника Контрагентов для УТ ХьюменСистем
          • Внедрение программного обеспечения «1С: Предприятие 8. Бухгалтерия сельскохозяйственного предприятия»
          • Интеграция с маркетплейсами озон и валберис
        • Консультация по 1С
          • Назад
          • Консультация по 1С
          • Разовое консультация ( 75.00 руб.коп)
          • Тарифные планы на сопровождение информационных систем
        • Построение аналитики и дашбордов
          • Назад
          • Построение аналитики и дашбордов
          • 1С Аналитика
          • Построение аналитики на Power BI
        • Продажа Битрикс24
      • Битрикс24
        • Назад
        • Битрикс24
        • Готовые кейсы для битрикс24
        • Новости и статьи Битрик24
        • Попробовать бесплатно битрикс 24
        • Программы 1С
      • Информация
        • Назад
        • Информация
        • Новости
        • Статьи
      • Контакты
      • +375 29 605 73 35
      Минск, ул. Татарская 3, этаж 3, офис 315
      info@sectorsystem.by
      • Главная
      • Информация
      • Статьи
      • Временные таблицы и общие табличные выражения (CTE) в 1С: за и против

      Временные таблицы и общие табличные выражения (CTE) в 1С: за и против

      Временные таблицы и общие табличные выражения (CTE) в 1С: за и против

      Иногда один монолитный запрос слишком сложен для чтения, написания и, что важнее, для выполнения.

      CTE и Временные таблицы — два способа разбить сложную задачу на простые шаги. Но они работают по-разному.

      1. Общие табличные выражения (CTE) — ВЫРАЗИТЬ … КАК …

      Что это? Это не объект, а "запрос внутри запроса", который определяется один раз и может быть использован в основном запросе.

      Плюсы:

      • Удобство и читаемость: Позволяют структурировать код, избавляясь от вложенных подзапросов.

      • Рекурсия: Уникальная возможность CTE для работы с иерархиями (например, вывод дерева групп номенклатуры).

      Минусы:

      • Нет материализации (часто): СУБД может "развернуть" CTE обратно в подзапрос. План выполнения запроса с CTE может не отличаться от плана с тем же подзапросом. CTE != оптимизация.

      • Многократное использование: Если вы ссылаетесь на CTE более одного раза в основном запросе, его тело может выполняться столько же раз. Это может быть неэффективно.

      2. Временные таблицы

      • Что это? Физическая таблица, создаваемая в временной БД (tempdb). Существует в рамках сеанса или транзакции.

      • Как использовать в 1С:

        bsl
        // Создание и заполнение
        Запрос = Новый Запрос;
        Запрос.Текст = "ВЫБРАТЬ ... ПОМЕСТИТЬ ВТ_Данные ...";
        Запрос.Выполнить();
        
        // Использование
        Запрос.Текст = "
        ВЫБРАТЬ ИЗ ВТ_Данные ...
        ";

      Плюсы:

      • Материализация: Данные физически записываются в tempdb. Это может сильно ускорить сложные запросы, так как промежуточный результат вычисляется один раз.

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

      • Многократное использование: Идеально, когда один и тот же набор данных нужно использовать в нескольких разных запросах.

      Минусы:

      • Overhead (дополнительные затраты): Процесс создания таблицы, записи в нее данных и чтения — не бесплатный. Для простых задач это может быть избыточно.

      • Читаемость: Код становится более громоздким.

      3. Сравнительная таблица: когда что использовать?

      Критерий    CTE    Временная Таблица
      Сложность данных    Простые и средние наборы    Большие и сложные наборы
      Многократное использование    Плохой выбор    Идеальный выбор
      Читаемость кода    Отличная    Средняя
      Производительность    Как у подзапроса (часто)    Выше (за счет материализации)
      Уникальные фичи    Рекурсия    Возможность создания индексов

      4. Практические рекомендации

      • Начинайте с CTE, если нужно улучшить читаемость и данные не слишком велики.

      • Переходите на ВТ, если:

        • Один и тот же набор используется много раз.

        • Запрос с CTE выполняется медленно, и в плане видно многократное выполнение одного и того же подзапроса.

        • Вам нужно создать индекс для ускорения дальнейшей обработки.

      • Рекурсия — царство CTE. Для деревьев и иерархий альтернатив почти нет.


      Заключение:

      • CTE — это в первую очередь про удобство кода.

      • Временные таблицы — это про производительность и контроль на сложных операциях.

      • Правильный выбор зависит от конкретной задачи и объема данных.


      Теги
      1С временные таблицы в 1С
      • Комментарии
      Загрузка комментариев...

      Назад к списку Следующая статья
      Категории
      • PowerBI0
      • Битрикс2410
      • Блок программиста 1С (Новичок)65
      • Все про 1С225
      • Советы по автоматизации бизнеса9
      Это интересно
      • Вводный урок: основы работы с запросами в консоли
        Вводный урок: основы работы с запросами в консоли
        18 августа 2025
      • Макеты в 1С: Искусство превращения данных в документы
        Макеты в 1С: Искусство превращения данных в документы
        13 августа 2025
      • Документы в 1С
        Документы в 1С
        11 августа 2025
      • Справочники в 1С
        Справочники в 1С
        11 августа 2025
      • Подсистемы в 1С
        Подсистемы в 1С
        11 августа 2025
      • Создание информационной базы в 1С
        Создание информационной базы в 1С
        11 августа 2025
      • Разбор полетов: реальный кейс оптимизации медленного отчета в 1С
        Разбор полетов: реальный кейс оптимизации медленного отчета в 1С
      • Топ-5 ошибок разработчика, которые убивают производительность 1С
        Топ-5 ошибок разработчика, которые убивают производительность 1С
      • Оптимизация запросов к виртуальным таблицам регистров сведений и накопления
        Оптимизация запросов к виртуальным таблицам регистров сведений и накопления
      • Модули в 1С: как правильно организовать код
        Модули в 1С: как правильно организовать код
      • Обработки vs Расширения: что выбрать для доработки типовой конфигурации?
        Обработки vs Расширения: что выбрать для доработки типовой конфигурации?
      • Оповещение() vs ВыполнитьОбработкуОповещения(): Асинхронность для чайников
        Оповещение() vs ВыполнитьОбработкуОповещения(): Асинхронность для чайников
      • Диалоги с пользователем: Вопрос(), Сообщить(), ВвестиЗначение()
        Диалоги с пользователем: Вопрос(), Сообщить(), ВвестиЗначение()
      • Отладка кода в 1С: как найти ошибку за 1 минуту
        Отладка кода в 1С: как найти ошибку за 1 минуту
      • Что такое контекст выполнения (клиент, сервер) и почему мой код не видит переменную?
        Что такое контекст выполнения (клиент, сервер) и почему мой код не видит переменную?
      • Чем отличаются процедуры и функции в 1С?
        Чем отличаются процедуры и функции в 1С?
      • Чем отличаются массив, структура и соответствие в 1С
        Чем отличаются массив, структура и соответствие в 1С
      • Обработка исключений в 1С: надежный код без сбоев
        Обработка исключений в 1С: надежный код без сбоев
      • Как исправить данные, когда висит окно "не удалось выполнить обновление"
        Как исправить данные, когда висит окно "не удалось выполнить обновление"
      • Вложенные поля СКД в 1С
        Вложенные поля СКД в 1С
      Облако тегов
      1C:8 1С 1С ERP 1С ERP Беларусь 1с бухгалтерские проводки 1С Комплексная автоматизация 1С Комплект поддержки Беларусь 1с проводки 1С рассылка 1С синхронные методы 1с электронная почта 1С-Битрикс 1С:7 CRM абонентское обслуживание 1С автозаполнение документов в 1С автоматизация зарплаты 1С автоматизация склада 1С Автоматическое развертывание анализ процессов безопасность Безопасность труда Битрикс24 Бухгалтерский учет виды обмена в 1С Визуализация данных вложенные поля СКД внедрение внедрение Битрикс24 возможности платформы Битрикс24 временные таблицы в 1С вывод количества вывод списка 1с гайд по 1С Главное в 1С Диаграмма в 1С дизайн динамический интерфейс динамический список 1с загрузка в 1С загрузка из excel запросы в 1С Инструктажи интеграция 1С с CRM интеграция 1С с Битрикс интеграция 1С с маркетплейсами интеграция с платежными системами интерьер Искусственный интеллект исправление ошибок в 1С консоль запросов 1С константы 1С Контактная информация Контрагент Круговая диаграмма купить 1С лиды Машинное обучение мобильное приложение монопольный режим 1С налоговая отчетность 1С Беларусь написание кода 1С настройка списков 1с обзор обновление 1С обновление 1С Беларусь обработка исключений обучение пользователей 1С оптимизация запросов в 1С Оптимизация отчетов в 1С отчёты в 1С Охрана труда Печатная форма план обмена в 1С подсчет записей Предиктивная аналитика программирование 1С Работа с документами в Битрикс24 Рабочие места Рассылки расчет стоимости внедрения роли в 1С синхронизация CRM и 1С СКД советы разработчикам создание и настройка констант 1С создание и настройка ролей в 1С сопровождение 1С Беларусь сопровождение 1С онлайн составление отчетов в Битрикс табличная часть телеграм бот 1с тренинг 1С Минск удалённая поддержка 1С управление персоналом 1С УправлениеКонтактнойИнформацией ускорение работы в 1С Установить 1С в минске установка битрикс учет склада 1С читаемый код 1С шаблоны документов в 1С Юридический адрес
      Автоматизируем любой бизнес
      Подписывайтесь на новости и акции:
      Компания
      О компании
      Клиенты и партнеры
      Сотрудники
      Отзывы
      Вакансии
      Реквизиты
      Услуги
      Автоматизация 1С : Предприятия 8
      Внедрение 1С
      Демонстрация типовых решений 1с для Беларуси
      Кейсы 1С
      Консультация по 1С
      Построение аналитики и дашбордов
      Продажа Битрикс24
      Наши контакты

      +375 29 605 73 35
      Пн. – Пт.: с 9:00 до 18:00
      Минск, ул. Татарская 3, этаж 3, офис 315
      info@sectorsystem.by
      © 2026 SectorSystem- сопровождение информационных систем. Все права защищены.