Подсчитать количество строк хитро

1. MirrorDen 16.01.19 20:21 Сейчас в теме
Есть задача: В табличной части документа есть заполненные строки:

Сотрудник1 Должность1
Сотрудник2 Должность2
Сотрудник3 Должность1
Сотрудник3 Должность4
Сотрудник3 Должность5
Сотрудник3 Должность5
Сотрудник4 Должность6
Сотрудник5
Сотрудник6 Должность7
Сотрудник7
Сотрудник8

Вот здесь запрос должен вернуть 10 строк. Как?

Необходимо подсчитать количество строк запросом?
У кого есть идеи, я все умер.
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. SedovSU@mail.ru 297 16.01.19 20:30 Сейчас в теме
(1)маленько не понятно, вот в вашем примере сколько должно получится строк? 6? Или 4?
5. MirrorDen 16.01.19 20:33 Сейчас в теме
(1)Должно получиться 6 строк
3. kumi2012 103 16.01.19 20:32 Сейчас в теме
Реквизит Должность или множество реквизитов Должность1 ..?
4. SedovSU@mail.ru 297 16.01.19 20:32 Сейчас в теме
Или необходимо узнать сколько уникальных значений должности?
6. SedovSU@mail.ru 297 16.01.19 20:40 Сейчас в теме
В запросе выбираете поле должность и на вкладке группировки перетягиваете в поле агрегатных функций и применяйте функцию количество.
количество(должность) 
7. MirrorDen 16.01.19 20:45 Сейчас в теме
юззэ1(6)А как же последних два пустых значения?
Вообще это нужно реализовать через запрос в СКД.
8. SedovSU@mail.ru 297 16.01.19 20:58 Сейчас в теме
(7)ну вы же используете функцию количество а не количестворазличных по логике должна вернуть количество 6, хотя могу ошибаться
10. MirrorDen 16.01.19 21:00 Сейчас в теме
15. SedovSU@mail.ru 297 17.01.19 06:18 Сейчас в теме
(10) Добавил документ, в нем сделал табличную часть, добавляю 5 строк, 3 из которых с пустым значением, пишу запрос

	Запрос = Новый Запрос("ВЫБРАТЬ
	                      |	КОЛИЧЕСТВО(ПримерТабличнаяЧасть1.Реквизит2) КАК Реквизит2
	                      |ИЗ
	                      |	Документ.Пример.ТабличнаяЧасть1 КАК ПримерТабличнаяЧасть1
	                      |ГДЕ
	                      |	ПримерТабличнаяЧасть1.Ссылка = &Ссылка");
	Запрос.УстановитьПараметр("Ссылка", Объект.Ссылка);
	ВыборкаРезультата = Запрос.Выполнить().Выбрать();


В результате возвращает количество 5.
Все должно работать или я как то ни так понимаю как Вам нужно
9. kumi2012 103 16.01.19 20:59 Сейчас в теме
Можно запрос с вложением - на верхнем уровне Количество (Должность), на низком Выбрать различные Должность.
11. MirrorDen 16.01.19 21:01 Сейчас в теме
(9)Нет, посчитайте сами сколько будет
12. MirrorDen 16.01.19 21:22 Сейчас в теме
Сотрудник1 Должность1
Сотрудник1 Должность1
Сотрудник2 Должность2
Сотрудник3 Должность3
Сотрудник4
Сотрудник5
Сотрудник6

Вот так правильнее будет. Здесь должно быть 6 строк: Должность1 + Должность2 +Должность3 + Сотрудник4 +Сотрудник5 + Сотрудник6
13. kumi2012 103 16.01.19 21:42 Сейчас в теме
(12) Посчитать с помощью ВЫБОР КОГДА заполненные разлиные должности и отдельно количествол сотрудников с пустой должностью.
MirrorDen; +1 Ответить
17. JohnGalt 57 17.01.19 12:48 Сейчас в теме
(12) То есть в первом примере в теме требуемое количество указано неправильно? Потому что исходя из примера нового подсчета в первом примере правильное количество должно быть 9 (Сотрудник1,2,3,4,5,Должность1,11,2,3) Тогда просто нужно суммировать количество различных каждой колонки. Типа Количество(Различные Сотрудник) + Количество(Различные Должность)
14. SedovSU@mail.ru 297 16.01.19 21:52 Сейчас в теме
Смотрите напишите так в запросе
выбор когда должность = значение(справочник. Должности.пустаяссылка) тогда сотрудник иначе должность конец

И к этому полю примените функцию количество в запросе и тогда точно будет 6 записей
MirrorDen; bad_wag; markw; +3 Ответить
16. meriferi 17.01.19 07:49 Сейчас в теме
В запросе применить группировку (количество) или в выборке включить счетчик
18. MirrorDen 17.01.19 15:02 Сейчас в теме
Сотрудник1 Должность1
Сотрудник2 Должность2
Сотрудник3 Должность1
Сотрудник3 Должность4
Сотрудник3 Должность5
Сотрудник3 Должность5
Сотрудник4 Должность6
Сотрудник5
Сотрудник6 Должность7
Сотрудник7
Сотрудник8

Вот здесь запрос должен вернуть 10 строк. Как?
19. pm74 199 17.01.19 17:56 Сейчас в теме
Выбрать различные сотрудник, должность, количество(сотрудник)
20. nickstrelets 02.10.23 01:15 Сейчас в теме
(19)
Помог ваш комментарий.
Надо было выбрать из РС "ВерсииОбъектов" по какому объекту в этом РС какое количество записей есть.
Получился запрос:
ВЫБРАТЬ РАЗЛИЧНЫЕ
	ВерсииОбъектов.Объект КАК Объект,
	КОЛИЧЕСТВО(ВерсииОбъектов.Объект) КАК Количество
ИЗ
	РегистрСведений.ВерсииОбъектов КАК ВерсииОбъектов
ГДЕ
	ВерсииОбъектов.ДатаВерсии > ДАТАВРЕМЯ(2023,8,1)
СГРУППИРОВАТЬ ПО
	ВерсииОбъектов.Объект
УПОРЯДОЧИТЬ ПО
	Количество УБЫВ
Показать
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот