|
Запрос, с подзапросом в качестве параметра регистра(срез последних) Как? | ☑ | ||
|---|---|---|---|---|
|
0
VVi3ard
27.10.05
✎
11:18
|
Есть запрос:
ВЫБРАТЬ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Параметры.Имя) КАК Имя ИЗ РегистрСведений.Параметры.СрезПоследних(&Дата) КАК Параметры Вбирает на указаную дату количество человек. Необходимо выбрать количество человек с интервалом в месяц т.е. Январь - 30 Февраль - 40 и.т.д на SQL подобное деается через виртуальную таблицу... а как такое провернуть в SQL 1С? |
|||
|
1
ZolotarevAA
27.10.05
✎
11:27
|
(0) Регистр сведений - периодический?
|
|||
|
2
ZolotarevAA
27.10.05
✎
11:37
|
2 (0) Полагаю, что использование вирт. таблицы СрезПоследних в данном случае является ошибкой.
|
|||
|
3
VVi3ard
27.10.05
✎
11:45
|
ZolotarevAA
Да переодический в пределах секунды. Можно конечно использовать цикл и в цикле вызывать запрос каждый раз с новым параметром, но это совсем не устраивает. темболе что я уверен что можно как то провернуть это дело на встроеном SQL |
|||
|
4
Shaytan
27.10.05
✎
11:50
|
Как вариант - Запрос к основной таблице регистра + "ПЕРИОДАМИ".
Можно в цикле по месяцам формировать текст запроса как объединение подзапросов, получающих данные на один месяц. |
|||
|
5
VVi3ard
27.10.05
✎
11:54
|
Первый вариант попробую. Второй вариант не подходит т.к. запрос не должен менятся (текст запроса), меняются только параметры
|
|||
|
6
Rovan
гуру
27.10.05
✎
12:07
|
(0) почитай тут v8: Срез последних на каждую дату в запросе
|
|||
|
7
VVi3ard
27.10.05
✎
13:09
|
Rovan
Огромное спасибо за идею я думал думал я все понял. Я просто не сообразил про опорную таблицу (ты называешь её главной) :-) Вот как это выглядит у меня: ВЫБРАТЬ КОЛИЧЕСТВО(РАЗЛИЧНЫЕ Параметры.Имя) КАК Имя, ВложенныйЗапрос.Начало ИЗ РегистрСведений.Параметры КАК Параметры, (ВЫБРАТЬ НАЧАЛОПЕРИОДА(Начисления.Период, МЕСЯЦ) КАК Начало, КОНЕЦПЕРИОДА(Начисления.Период, МЕСЯЦ) КАК Коне ИЗ РегистрНакопления.Начисления КАК Начисления) КАК ВложенныйЗапрос ГДЕ Параметры.Период <= ВложенныйЗапрос.Коне СГРУППИРОВАТЬ ПО ВложенныйЗапрос.Начало Вобщем если коротко то Первый запрос (ВЫБРАТЬ НАЧАЛОПЕРИОДА(Начисления.Период, МЕСЯЦ) КАК Начало, КОНЕЦПЕРИОДА(Начисления.Период, МЕСЯЦ) КАК Коне ИЗ РегистрНакопления.Начисления КАК Начисления) КАК ВложенныйЗапрос Выбирает Основу (скажем так список параметров) для запроса, если его выполнить получим список,Ю причём меняя значение параметра функции НачалоПериода можно брать расшифровку по квартально или по годам... т.к. SQL для каждой строчки первого запроса будет расчитывать значение второго запроса осталось только добавить условие и всё! |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |