Вход | Регистрация

1С:Предприятие ::

Метки: 

Произвольная сортировка данных в запросе

Я
   wizards
 
17.10.17 - 13:54
Добрый день.
Надо объединить 2 выборки данных в запросе с разной сортировкой.
Пример для наглядности (реальный пример намного сложнее, для упрощения  приводить не буду)
ВЫБРАТЬ
    РеализацияТоваровУслуг.Ссылка,
        РеализацияТоваровУслуг.Дивизион
ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
ГДЕ
    РеализацияТоваровУслуг.Контрагент = &Контрагент

УПОРЯДОЧИТЬ ПО
    РеализацияТоваровУслуг.Дата,
        Дивизион,
        РеализацияТоваровУслуг.ДатаОтгрузки
;

//////////////////////////////////////////////////////////////////////

ВЫБРАТЬ
    РеализацияТоваровУслуг.Ссылка,
        РеализацияТоваровУслуг.Дивизион
ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
ГДЕ
    РеализацияТоваровУслуг.Контрагент = &Контрагент1
    
УПОРЯДОЧИТЬ ПО
    РеализацияТоваровУслуг.Дата,
        РеализацияТоваровУслуг.ДатаОтгрузки

Данные в 1 запросе должны быть упорядочены по дате, дивизиону (число) и дате отгрузки, во 2 запросе - только по дате и дате отгрузки. В конечном итоге нужно получить объединение выборок с сортировкой по дате и дате отгрузки, но при этом чтобы сортировка 1 запроса по дивизиону "не слетела". Насколько я понимаю, это невозможно, думал о подстановке во 2 запрос (где сортировка по дивизиону не используется) случайного числа как дивизиона, но как генерировать случайное число для каждой строки выборки?
 
  Рекламное место пустует
   Рэйв
 
1 - 17.10.17 - 14:04
Объединить все

Если я правильно стелепатировал
   azernot
 
2 - 17.10.17 - 14:06
ЯННП.

1. Сортировать надо на уровне выше (т.е. обединение должно быть во вложенном запросе).
2. Нужно определиться как данные второго запроса в объединении должны располагаться по отношению к данным первого. Они должны быть ДО или ПОСЛЕ? Например, во втором запросе вместо дивизиона можно явно указать -10000000, или наоборот 9999999999999999. Т.е. данные второго запроса будут сортированы также по дивизиону, но с заведомо маленьким или огромным значением.
   wizards
 
3 - 17.10.17 - 14:17
(2) Я тоже так думаю, но явное указание дивизиона не подойдет, т.к. данные 2 запроса должны по дивизиону сортироваться в произвольном порядке
   azernot
 
4 - 17.10.17 - 14:20
> должны по дивизиону сортироваться в произвольном порядке

Это как? Что значит в произвольном порядке? А почему бы не назвать явное указание дивизиона произвольным порядком?
Иди почему бы тогда не отсортировать собственно по реальному дивизиону и назвать это произвольным порядком?

Мне кажется вы не очень хорошо понимаете, чего хотите.


Список тем форума
Рекламное место пустует  
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует