Форум программистов, компьютерный форум, киберфорум
1С: Собственные программы
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
Супер-модератор
Эксперт 1СЭксперт по компьютерным сетямЭксперт HardwareЭксперт Windows
 Аватар для Maks
9715 / 5551 / 647
Регистрация: 13.03.2013
Сообщений: 19,192
Записей в блоге: 63
1C 8.x

Объединить таблицы в запросе и просуммировать результат

18.01.2025, 21:03. Показов 4079. Ответов 28
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Приветствую, коллеги.
Имеется такая задача: неoбхoдимo реализовать альтернативный вариант запрoса для пoлучения неoбхoдимых данных, с испoльзoванием не oперации "СОЕДИНЕНИЕ", а oперации "ОБЪЕДИНИТЬ" языка запрoсoв.

Запрос
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
ВЫБРАТЬ
    Премии.НомерСтроки КАК НомерСтроки,
    Премии.ВидРасчета.СпособРасчета КАК СпособРасчета,
    ЕСТЬNULL(ПремииБазаОсновныеНачисления.РезультатБаза, 0) + ЕСТЬNULL(ПремииБазаПремии.РезультатБаза, 0) КАК СуммаБазы
ИЗ
    РегистрРасчета.Премии КАК Премии
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрРасчета.Премии.БазаОсновныеНачисления(
                &ИзмеренияОсновногоРегистра,
                &ИзмеренияБазовогоРегистра,
                ,
                Регистратор = &Регистратор
                    И ВидРасчета.КатегорияРасчета = &КатегорияРасчета) КАК ПремииБазаОсновныеНачисления
        ПО Премии.НомерСтроки = ПремииБазаОсновныеНачисления.НомерСтроки
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрРасчета.Премии.БазаПремии(
                &ИзмеренияОсновногоРегистра,
                &ИзмеренияБазовогоРегистра,
                ,
                Регистратор = &Регистратор
                    И ВидРасчета.КатегорияРасчета = &КатегорияРасчета) КАК ПремииБазаПремии
        ПО Премии.НомерСтроки = ПремииБазаПремии.НомерСтроки
ГДЕ
    Премии.Регистратор = &Регистратор
    И Премии.ВидРасчета.КатегорияРасчета = &КатегорияРасчета
 
УПОРЯДОЧИТЬ ПО
    НомерСтроки


Откровенно говоря, впал в ступор, ибо с языком запросов знаком посредственно.
Собственно, прошу пнуть натолкнуть на мысль, что нужно сделать, касательно данного запроса (желательно с практическими примерами)?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
18.01.2025, 21:03
Ответы с готовыми решениями:

Объединить результат нескольких строк в запросе Linq SQL
У меня есть 2 связанные таблицы. Одна - с заявками и двумя колонками: RequestId и PersonId. Вторая - с человеками и четырьмя колонками:...

Нужно в запросе SQL объединить 4 таблицы
Нужно в запросе SQL объединить 4 таблицы. 3 в одной базе, 1 в другой. Как бы это сделать. Причем все это нужно подложить под ADO. ...

Объединить две строки таблицы в запросе
Всем привет. Дико туплю над одной задачей, не могу сделать ее. Есть таблица по продажам, в ней записи идут так ...

28
 Аватар для Аватар
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
19.01.2025, 16:48
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Yulunga Посмотреть сообщение
есть повод подумать над степенью квалификации руководителей
не скажи. а вдруг запрос готовится для динамического списка, а там низзя вр.таблицы и скорее всего всегда так булет
1
Супер-модератор
Эксперт 1СЭксперт по компьютерным сетямЭксперт HardwareЭксперт Windows
 Аватар для Maks
9715 / 5551 / 647
Регистрация: 13.03.2013
Сообщений: 19,192
Записей в блоге: 63
19.01.2025, 18:59  [ТС]
Цитата Сообщение от Yulunga Посмотреть сообщение
фу бе если хотите знать моё мнение.
Ограничения на соединения с вложенными запросами и виртуальными таблицами
Ну так предложите свое рабочее решение, с удовольствием его рассмотрю и опробую на практике.
Пока что предложенные Вами варианты привели к результатам отличным от исходного запроса (пусть и частично).
Цитата Сообщение от Yulunga Посмотреть сообщение
я к тому, что раз просят в подзапросе, то есть повод подумать над степенью квалификации руководителей...
Сабж это задание УЦ, конкретный метод (подзапрос, или ВТ) обозначен не был. Требуется собрать запрос в консоли запросов.
Будь это запрос в отчете СКД, я бы с легкостью "отрубил" результат первого запроса (в варианте с ВТ) выборкой детальных записей.
0
Модератор
Эксперт 1С
 Аватар для Yulunga
4767 / 963 / 269
Регистрация: 22.04.2013
Сообщений: 6,644
Записей в блоге: 1
19.01.2025, 20:16
так может это и будет наилучший вариант - с ВТ ?
0
Супер-модератор
Эксперт 1СЭксперт по компьютерным сетямЭксперт HardwareЭксперт Windows
 Аватар для Maks
9715 / 5551 / 647
Регистрация: 13.03.2013
Сообщений: 19,192
Записей в блоге: 63
19.01.2025, 21:42  [ТС]
Цитата Сообщение от Yulunga Посмотреть сообщение
так может это и будет наилучший вариант - с ВТ
Андрей, предложите рабочий вариант для консоли запроса? Я выполнил Ваши рекомендации, выложил код запроса и указал на его результат. Результат первого запроса (количество) явно лишний. Если у Вас есть варианты, как вывести результат запроса без него, тогда:
с удовольствием его рассмотрю и опробую на практике.
0
Модератор
Эксперт 1С
 Аватар для Yulunga
4767 / 963 / 269
Регистрация: 22.04.2013
Сообщений: 6,644
Записей в блоге: 1
19.01.2025, 22:47
да не. отдавайте так. просто , думаю, смотря какая консоль. в какой-то результат может не выводиться
у меня на работе есть вариант консоли под названием "запросник"
там если последний запрос выводится в ВТ, то оно пишет количество строк в результате
а если просто убираешь поместить вт
то выдаёт
поэтому тут дело такое.
0
21.01.2025, 12:43

Не по теме:

Maks, сдал работуто?
расскажи, интересно

0
Супер-модератор
Эксперт 1СЭксперт по компьютерным сетямЭксперт HardwareЭксперт Windows
 Аватар для Maks
9715 / 5551 / 647
Регистрация: 13.03.2013
Сообщений: 19,192
Записей в блоге: 63
21.01.2025, 13:01  [ТС]
Цитата Сообщение от Yulunga Посмотреть сообщение
сдал работуто?
расскажи, интересно
Да там особо ничего такого: объединил два запроса (как из поста 2, только использовал метод ОБЪЕДИНИТЬ, вместо ОБЪЕДИНИТЬ ВСЕ), далее сделал выборку ИЗ объединенных записей и просуммировал СуммуБазы.
0
 Аватар для Аватар
5393 / 1465 / 513
Регистрация: 31.05.2012
Сообщений: 5,153
21.01.2025, 13:05
я бы не убирал "все". можешь потерять одинаковые премиии из разных источников
1
Супер-модератор
Эксперт 1СЭксперт по компьютерным сетямЭксперт HardwareЭксперт Windows
 Аватар для Maks
9715 / 5551 / 647
Регистрация: 13.03.2013
Сообщений: 19,192
Записей в блоге: 63
21.01.2025, 15:05  [ТС]
Цитата Сообщение от Аватар Посмотреть сообщение
я бы не убирал "все". можешь потерять одинаковые премиии из разных источников
На реальных проектах - возможно, но в качестве методического примера никаких потерь не было, в результате работу приняли.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.01.2025, 15:05

Реально ли объединить 3 след. таблицы в одном запросе?
Данные: Т1: Код, Код2, Код3 // мастер-табл., здесь Код2 и 3 могут быть NULL Т2: Код2, Поле2 Т3: Код3, Поле3 Надо...

Объединить две таблицы уже в PHP? В SQL запросе не получается
Посылаю 2 запроса: 1. SELECT * , GROUP_CONCAT( `tur_id` ORDER BY `tur_id` ) as `tours`, MAX(`tur_id`) as `max_tur_id` FROM...

Неправильно извлекается результат из таблицы БД mysql при запросе количества строк
Подскажите в чем ошибка? Неправильно извлекается результат из таблицы БД mysql при запросе количества строк В даном случае у меня...

Как это сделать? Как объединить более одной таблицы в одном запросе?
Как это сделать? Как объединить более одной таблицы в одном запросе? Есть три таблицы: Табл1 поле1 поле2 поле3 ... ...

Ошибка "В запросе с предложениями РАЗЛИЧНЫЕ и ОБЪЕДИНИТЬ нельзя использовать вложенные таблицы"
Добрый вечер! Подскажите пожалуйста, как можно исправить ошибку. В СКД сделала запрос. Все нормально отображается, но повторяются одни и те...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
29
Ответ Создать тему
Новые блоги и статьи
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
Установка MinGW GCC 16.2 и CMake
8Observer8 10.08.2026
VK Видео: https:/ / vkvideo. ru/ video-240781534_456239017 YouTube: eY5-5PyI9NM Текстовая версия
Неделя из жизни имитационной модели склада: мои кривые руки растут, откуда надо
anaschu 10.08.2026
Неделя из жизни имитационной модели склада: как я почти написал неправильную логику и что с этим делать Работаю сейчас над учебно-рабочим проектом: строю в AnyLogic имитационную модель процессов. . .
Калькулятор для расчета родства
russiannick 07.08.2026
1. Задача: Создать калькулятор для расчета родства. Родственных связей существует 8 ступеней, такие как: p - отец P - мать q - муж Q - жена b - брат B - сестра s - сын S - дочь
Мир по моей воле
kumehtar 07.08.2026
Когда-то кажется, что всё просто. Ты весь такой светлый. Причиняешь добро. Борешься за справедливость в этом тёмном мире. Потом начинаешь замечать одну неприятную вещь. Почти каждый хороший. . .
Кредитный калькулятор
Maks 05.08.2026
Решение задачи по прикладной информатике средствами 1С. Задача: Напишите приложение-калькулятор, которое помогает рассчитывать параметры кредита для аннуитетного и дифференцированного видов. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru