|
v8: Как запросом найти сотрудников с одинаковыми табельными номерами? |
☑ |
0
0level
08.11.13
✎
15:55
|
Есть регистр сведений кадровые сведения в нем повторяются записи содержащие табельный номер и сотрудника, нужно исключить повторяющиеся записи и выбрать тех сотрудников у кого одинаковые табельные номера.
ВЫБРАТЬ различные
КадровыеСведения.ТабНомер как таб,
КадровыеСведения.сотрудник
ИЗ
РегистрСведений.КадровыеСведения КАК КадровыеСведения
как выбрать те строки в которых совпадает табельный номер
|
|
1
Naumov
08.11.13
✎
15:56
|
извини, но я написал в удаленной ветке.
|
|
2
ДенисЧ
08.11.13
✎
15:57
|
ВЫБРАТЬ
КадровыеСведения.ТабНомер,
КадровыеСведения.сотрудник
ИЗ
РегистрСведений.КадровыеСведения КАК КадровыеСведения
СГРУППИРОВАТЬ ПО ТабНомер, Сотрудник
ИТОГИ ПО ТабНомер
выб = ЗАпрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока выб.Следующий() Цикл
сообщить("Табномер " + выб.ТабНомер);
выбС = выб.Выбрать(ОбходРезультатаЗАпрос.ПоГруппировкам);
Пока выбС.Следующий() Цикл
сообщить("" + выбС.Сотрудник);
КонецЦикла;
КонеЦикла
|
|
3
Maxus43
08.11.13
✎
15:58
|
(2) ёперный театр)
Имеющие чего не заюзал? в запросе ж делается
|
|
4
viktor_vv
08.11.13
✎
16:02
|
ВЫБРАТЬ
КадровыеСведения.ТабНомер как таб,
КадровыеСведения.сотрудник
ИЗ
РегистрСведений.КадровыеСведения КАК КадровыеСведения
Внутреннее соединение
(
ВЫБРАТЬ
КадровыеСведения.ТабНомер как таб,
Количество(КадровыеСведения.сотрудник)
ИЗ
РегистрСведений.КадровыеСведения КАК КадровыеСведения
Группировать ПО КадровыеСведения.ТабНомер
Имеющие Количество(КадровыеСведения.сотрудник) > 1
) КАК Одинаковые ПО Одинаковые.Таб = КадровыеСведения.ТабНомер
|
|
5
catena
08.11.13
✎
16:05
|
(4)А если по одному сотруднику несколько записей?
|
|
6
viktor_vv
08.11.13
✎
16:11
|
(5) Это да, надо бы сгруппировать предварительно по табельному - сотруднику. (4) Написал из предположения один сотрудник - одна запись.
|
|
7
viktor_vv
08.11.13
✎
16:13
|
(6)+ Хотя проще
Количество(Различные КадровыеСведения.сотрудник)
ИЗ
РегистрСведений.КадровыеСведения КАК КадровыеСведения
Группировать ПО КадровыеСведения.ТабНомер
Имеющие Количество(Различные КадровыеСведения.сотрудник) > 1
|
|
8
Classic
08.11.13
✎
16:18
|
ВЫБРАТЬ различные
КадровыеСведения.ТабНомер как таб,
КадровыеСведения.сотрудник
ИЗ
РегистрСведений.КадровыеСведения КАК КадровыеСведения
ВНУТРЕНЕЕ СОЕДИНЕНИЕ РегистрСведений.КадровыеСведения КАК КадровыеСведения1
ПО КадровыеСведения.ТабНомер = КадровыеСведения1.ТабНомер
И КадровыеСведения.Сотрудник <> КадровыеСведения1.Сотрудник
|
|
9
0level
08.11.13
✎
16:25
|
Classic
Classic СПАСИБО ВСЕ ОК!!!!!!!!!!!!!!!!
|
|