Добрый вечер, господа программисты!
Никак не пойму одну вещь, а вы наверняка знаете )
Есть запрос, который "фильтрует" некую Таблицу с помощью небольшой таблицы и следующего условия:
Все бы хорошо, но один из элементов Таблицы удовлетворяет не одному, а сразу двум условиям (1 и 2) и в результате попадает в итоговую выборку дважды. Так вот, как сделать так, чтобы запись не дублировалась?
Никак не пойму одну вещь, а вы наверняка знаете )
Есть запрос, который "фильтрует" некую Таблицу с помощью небольшой таблицы и следующего условия:
ВЫБРАТЬ
С.ДатаВыдачи,
Д.Количество,
С.КоличествоОстаток
ИЗ
С КАК С
ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ДолжностиОрганизаций.НормыВыдачи КАК Д
ПО С.Значение = Д.Инвентарь
И С.ТекущаяДолжностьОрганизации = Д.Ссылка
ГДЕ
(Д.Подразделение = С.ТекущееПодразделениеОрганизации
ИЛИ Д.Подразделение = ЗНАЧЕНИЕ(Справочник.ПодразделенияОрганизаций.ПустаяСсылка)
ИЛИ Д.Подразделение ЕСТЬ NULL )
ПоказатьВсе бы хорошо, но один из элементов Таблицы удовлетворяет не одному, а сразу двум условиям (1 и 2) и в результате попадает в итоговую выборку дважды. Так вот, как сделать так, чтобы запись не дублировалась?
По теме из базы знаний
- Потребление места на диске С в папке temp
- RLS - дубли условий в запросах к СУБД
- Комплексный контроль остатков. Для одного или сразу нескольких логически связанных регистров накопления. Универсальное решение уровня данных для контроля не только складских остатков
- Чек-листы для проведения Code Review
- Лечение ситуации: Обнаружено дублирование ключевых значений. Отображение данных в списке невозможно
Найденные решения
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(1)
Не в этом причина. Причина в том, что для одного из элементов таблицы "С" всё совокупное условие выполнилось в отношении сразу двух элементов таблицы "Д".
Вы включите в выборку поле Д.Ссылка, тогда видно будет что лишнее попадает и как условие поменять.
один из элементов Таблицы удовлетворяет не одному, а сразу двум условиям (1 и 2) и в результате попадает в итоговую выборку дважды
Не в этом причина. Причина в том, что для одного из элементов таблицы "С" всё совокупное условие выполнилось в отношении сразу двух элементов таблицы "Д".
Вы включите в выборку поле Д.Ссылка, тогда видно будет что лишнее попадает и как условие поменять.
В ситуациях, когда в результате соединения двух таблиц появляются одинаковые записи, и нет возможности наложить дополнительные фильтрующие условия необходимо использовать конструкцию
ВЫБРАТЬ РАЗЛИЧНЫЕ.
Группировка используется не для этого, несмотря на то, что она способна решить описанную задачу. Однако от группировку получается лишний код, который сбивает с толку разработчика, читающего его.
Конструкции языка запросов надо использовать по назначению.
ВЫБРАТЬ РАЗЛИЧНЫЕ.
Группировка используется не для этого, несмотря на то, что она способна решить описанную задачу. Однако от группировку получается лишний код, который сбивает с толку разработчика, читающего его.
Конструкции языка запросов надо использовать по назначению.
Выбрать отбор по условию в котором не допускается дублирование записей. *Капитан Очевидность*
Группировка повторяющихся записей.
Изменения типа соединения в запросе (хотя 1С в этом плане вроде как ограничен более чем SQL)
Группировка повторяющихся записей.
Изменения типа соединения в запросе (хотя 1С в этом плане вроде как ограничен более чем SQL)
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот