powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Пчму Update на пустом Recordset-e выполн гораздо! дольше, чем на полном (#tbls)
2 сообщений из 2, страница 1 из 1
Пчму Update на пустом Recordset-e выполн гораздо! дольше, чем на полном (#tbls)
    #32049402
vadim_march
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем!
Строю таблицу связок "закупка - продажа" (#ord, #sel) (post factum разумеется :) )
Курсором долго, поэтому использую цикл итерации в несколько шагов:
1. (HideNotOrd)(updete) делаю hide продажам, для которых нет закупок
2. (TOP 1)(select ... join ... join ...) запрос в таблицу #reletion по одной записи из обоих таблиц (#ord, #sel) с количеством, наименьшим в одной из таблиц для каждого кода товара по условию min(_date)
3. (HideMinusDate)(updete) делаю hide продажам, для которых закупки были позже :) Этого не может быть. Просто на всякий случай. (хотя именно про него я говорил в заголовке)
4. (SubSel)(updete) уменьшаю продажи на количество из #reletion
5. (SubOrd)(updete) уменьшаю закупки на количество из #reletion
Количество данных, участвующих в каждом цикле итерации уменьшается. Привожу пример 3 и 4 Updates:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
   update #sel
   set _hide =  0 
   from #sel inner join #rel as r on #sel.bid = r.bid
   where r._hide =  0 
 ----------
 
   update #sel
   set qty = #sel.qty - r.qty
   from #sel inner join #rel as r on #sel.bid = r.bid
   where r._hide =  1  
А теперь вашему вниманию таблица временных промежутков, мс:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
HideNotOrd        TOP  1       HideMinusDate    SubSel  SubOrd
 ------------------------------------------------
 
 6093 		 296 		 486 	 153 	 33 
 140 		 296 		 406 	 76 	 33 
 110 		 420 		 296 	 80 	 13 
 110 		 266 		 296 	 110 	 13 
 93 		 300 		 296 	 76 	 16 
 93 		 266 		 296 	 76 	 16 
 93 		 266 		 296 	 76 	 16 
 93 		 296 		 296 	 63 	 13 
 96 		 280 		 326 	 93 	 0 
...		...		...	...	...
Recordset шага HideMinusDate ПУСТОЙ! я проверял

:-( Что я не так делаю? Пожалуйста.
...
Рейтинг: 0 / 0
Пчму Update на пустом Recordset-e выполн гораздо! дольше, чем на полном (#tbls)
    #32049466
vadim_march
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Жаль, похоже никто не знает :-(
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Пчму Update на пустом Recordset-e выполн гораздо! дольше, чем на полном (#tbls)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]