Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 10:27

Найти сотрудников, получающих максимальную зарплату в своем отделе

Автор Денис Степанищев, 28 фев 2017, 10:23

0 Пользователей и 1 гость просматривают эту тему.

Денис Степанищев

Все данные хранятся в справочнике "Сотрудники". Написал запрос.Как из него теперь выбрать первую запись из каждого отдела?
ВЫБРАТЬ
Сотрудники.Наименование,
Сотрудники.Отдел КАК Отдел,
Сотрудники.Зарплата КАК Зарплата
ИЗ
Справочник.Сотрудники КАК Сотрудники

СГРУППИРОВАТЬ ПО
Сотрудники.Отдел,
Сотрудники.Наименование,
Сотрудники.Зарплата

УПОРЯДОЧИТЬ ПО
Отдел,
Зарплата УБЫВ


LexaK

странный конечно запрос какой-то
Необходимо использовать агрегатные функции, в данном случае Максимум,
вот пример

//сначала ищем максимальную ЗП по отделам
ВЫБРАТЬ
    Сотрудники.Отдел КАК Отдел,
    Максимум(Сотрудники.Зарплата) КАК Зарплата
поместить Таб
ИЗ
    Справочник.Сотрудники КАК Сотрудники

СГРУППИРОВАТЬ ПО
    Сотрудники.Отдел,
;
//Затем подбираем сотрудников которые получают эту максимальную ЗП
//ведь таких сотрудников может быть несколько
ВЫБРАТЬ
    Сотрудники.Отдел,
    Сотрудники.Наименование,
    Сотрудники.Зарплата
ИЗ
    Таб
левое соединение
    Справочник.Сотрудники КАК Сотрудники
по Таб.Отдел = Сотрудники.Отдел
и Таб.Зарплата= Сотрудники.Зарплата

Упорядочить по
1,2
автоупорядочивание


это один вариант, возможны другие
если помогло нажмите: Спасибо!

Денис Степанищев

Цитата: LexaK от 28 фев 2017, 11:12
странный конечно запрос какой-то
Необходимо использовать агрегатные функции, в данном случае Максимум,
вот пример

//сначала ищем максимальную ЗП по отделам
ВЫБРАТЬ
    Сотрудники.Отдел КАК Отдел,
    Максимум(Сотрудники.Зарплата) КАК Зарплата
поместить Таб
ИЗ
    Справочник.Сотрудники КАК Сотрудники

СГРУППИРОВАТЬ ПО
    Сотрудники.Отдел,
;
//Затем подбираем сотрудников которые получают эту максимальную ЗП
//ведь таких сотрудников может быть несколько
ВЫБРАТЬ
    Сотрудники.Отдел,
    Сотрудники.Наименование,
    Сотрудники.Зарплата
ИЗ
    Таб
левое соединение
    Справочник.Сотрудники КАК Сотрудники
по Таб.Отдел = Сотрудники.Отдел
и Таб.Зарплата= Сотрудники.Зарплата

Упорядочить по
1,2
автоупорядочивание


это один вариант, возможны другие
Благодарю. А то кружился вокруг да около. Оказалось все просто. Спасибо:-)

Анжела

писали руками или в консоле?
Добавлено: 23 ноя 2019, 04:42


ВЫБРАТЬ
   Сотрудники.Наименование,
   Сотрудники.Зарплата
ИЗ
   Справочник.Сотрудники КАК Сотрудники
      ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Сотрудники КАК Сотрудники1
      ПО Сотрудники.Руководитель = Сотрудники1.Ссылка
ГДЕ
   Сотрудники.Зарплата > Сотрудники1.Зарплата

Так будет вроде правильнее

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск