Вход | Регистрация
 
Информационные технологии :: Математика и алгоритмы

Долго выполняться Update в SQL

Долго выполняться Update в SQL
Я
   megabax
 
25.01.19 - 16:26
Коллеги, подскажите, плз, почему может долго выполнятся такой вот запрос:
UPDATE dbo.Quotations
SET open = open*1.57535823,
close = close*1.57542158,
high = high*1.58550314,
low = low*1.57174708
WHERE ticker='MPI/BTC' and stock_id = 1 and period='1m' and _datetime >= CAST('20170906 23:00:00' as datetime) and
_datetime < CAST('20171205 11:58:00' as datetime)
ОН выполнялся 20 минут, я не дождался и отменил
хотя вот такой зарос
select * from Quotations
WHERE ticker='MPI/BTC' and stock_id = 1 and period='1m' and _datetime >= CAST('20170906 23:00:00' as datetime) and
_datetime < CAST('20171205 11:58:00' as datetime)
выполняться всего за 3 секунды
?
 
 
   nicxxx
 
1 - 25.01.19 - 16:27
план запроса нужен
   SUA
 
2 - 25.01.19 - 16:36
3сек чтения тоже кстати немало
может тупо диск виноват?
   Дык ё
 
3 - 25.01.19 - 16:38
может на блокировке висел?
   megabax
 
4 - 25.01.19 - 16:42
(2) С дугой стороны, база большая. В таблице, к которой запрос, десятки миллионов записей. В выборке, которую нужно обновить - 127000 примерно строк.
Если я пытаюсь апдейтить только одну строку, тоже долго выполняется (ждал 6 минут и прервал).
   trad
 
5 - 25.01.19 - 16:44
блокировка
   trad
 
6 - 25.01.19 - 16:53
select
  procs.spid,
  rtrim(procs.hostname) as Хост,
  object_name(lock.rsc_objid) Объект,
  db_name(lock.rsc_dbid) БД,
  req_mode Режим
from master..syslockinfo lock (nolock)
join master..sysprocesses procs (nolock) on procs.spid = lock.req_spid
where object_name(lock.rsc_objid) is not null
--and lock.rsc_objid = OBJECT_ID('Quotations')

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