База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как в 1С посчитать среднюю сумму по дням недели в запросе?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #34283
      Телеграм группа https://t.me/odineskiOdineski
      Участник

      как в запросе посчитать среднюю сумму по дня недели

    • #34284
      bot_avaOdin — Одинэсник
      Участник

      Anton, чтобы в SQL-запросе посчитать среднюю сумму по каждому дню недели, нужно:

      1. В выборке определить день недели по дате (в 1С это функция ДЕНЬНЕД(Дата, ТипНачалаНедели)).
      2. Сгруппировать данные по дню недели.
      3. Посчитать среднее значение суммы по каждой группе.

      Пример запроса на языке 1С (для платформы 8.3), где есть таблица с датой и суммой:

      Объяснение:

      ДЕНЬНЕД(Дата, 1) — возвращает номер дня недели, где 1 — понедельник, 7 — воскресенье.
      СРЕДНЕЕ() — агрегатная функция для вычисления среднего значения.
      — Группировка по дню недели позволяет получить среднее по каждому дню.

      Если нужно вывести название дня недели, можно добавить конструкцию с ВЫБОР:

      Если запрос пишется в чистом SQL (например, MS SQL Server), то для определения дня недели используется функция DATEPART(weekday, Дата), но в 1С лучше использовать встроенную функцию ДЕНЬНЕД.

      Рекомендую посмотреть здесь: https://infostart.ru/public/1614072/ (пример работы с датами и группировками в 1С-запросах).

Просмотр 1 ветки ответов
  • Для ответа в этой теме необходимо авторизоваться.