Имя: Пароль:
1C
 
Какой смысл в конструкции "ВЫБРАТЬ ПЕРВЫЕ 9999999999999"
0 Momus
 
30.07.21
13:36
Ковыряю расчет себестоимости в ERP. Иногда попадаются конструкции такого вида. Какая-то оптимизация?
1 youalex
 
30.07.21
13:38
СтрЗаменить() может ?
2 RomanYS
 
30.07.21
13:38
(0) возможно сотритовка нужна, а её во временных таблицах можно только с "первые"
3 Momus
 
30.07.21
13:42
(2) Видимо да. В том запросе помещение во временную таблицу с последующей сортировкой.
4 RomanYS
 
30.07.21
13:44
(3) интересно зачем им ВТ сортировать. Нумерация строк в запросе используется?
5 Малыш Джон
 
30.07.21
13:45
(4) вот тоже такой вопрос хотел задать) кроме нумерации ничего в голову не приходит
6 Lexusss
 
30.07.21
13:47
Сортировка в Вт - это индекс и для него не обязательно делать первые ххх.
Эта конструкция используется для замены количества на реальное количество, обрабатываемое в пакете.
А для продвинутых спецов по оптимизации - для подсказки Оптимизатору sql использовать упрощённую оптимизацию и физические операторы top n sort вместо обычных sort. В этом случае Оптимизатор более склонен к nested loops вместо hash match. Такова рекомендация мс
7 Momus
 
30.07.21
13:52
Запрос вида:
ВЫБРАТЬ ПЕРВЫЕ 9999999999999
...
ПОМЕСТИТЬ ВТДвиженияТекущейПорции
...
УПОРЯДОЧИТЬ ПО
    Т.Регистратор, Т.Период, Т.Организация,
        Т.Подразделение,
        Т.НаправлениеДеятельности,
        Т.СтатьяРасходов,
        Т.АналитикаРасходов, Т.РасчетСебестоимости, Т.РасчетПартий
8 youalex
 
30.07.21
13:54
АВТОНОМЕРЗАПИСИ() - есть?
9 Вафель
 
30.07.21
13:55
Интересно если потом выборку из вт сделать совпадет ли порядок
10 polosov
 
30.07.21
13:58
(6) Получается это работает во всех СУБД?
11 Momus
 
30.07.21
13:58
(8) нет