Size: a a a

SqlCom.ru - уголок MS SQL

2021 May 05

О奧

Олег 奧列格 (Ào liè gé)... in SqlCom.ru - уголок MS SQL
Настроить сбор статистики исполнения запросов через XEvents, по умолчанию никак.
источник

A

Alexey in SqlCom.ru - уголок MS SQL
Если совсем недавно был, то может может в кеше и найдётся чего( но это не точно) и лучше всего иметь настроенный сбор нужного
источник

A

Andrey in SqlCom.ru - уголок MS SQL
источник

ДЮ

Дмитрий Юрьевич... in SqlCom.ru - уголок MS SQL
смотря что надо. например такие штуки есть https://www.systoolsgroup.com/sql-log-analyzer.html
источник

DP

Dmitry Pronin in SqlCom.ru - уголок MS SQL
Всем привет. При выполнении объемного запроса запущен Kill Spid этого процесса. Далее идет Rollback, можно ли узнать сколько по времени Rollback будет идти?
источник

DS

Denis Suhotin in SqlCom.ru - уголок MS SQL
Ну так, примерно, можно сделать ещё раз kill с параметром status only (чтобы случайно не прибить уже другой процесс, который может получить тот же код), но не всегда показывает, для больших транзакций часто показывает 0 сек.
источник

О奧

Олег 奧列格 (Ào liè gé)... in SqlCom.ru - уголок MS SQL
Попробуйте запустить sp_whoisactive  посмотрите столбец percent_complete
источник

DS

Denis Suhotin in SqlCom.ru - уголок MS SQL
Это, по-моему, работает только для процедур, которые штатно репортят процент выполнения, вроде бэкапа.
источник

DS

Denis Suhotin in SqlCom.ru - уголок MS SQL
Ещё, как вариант, вы можете делать запрос с nolock, который бы считал оставшееся число ошибочно вставленных/измененных записей, и прикинуть скорость на основе пары изменений через интервал времени.
источник

A

Andrey in SqlCom.ru - уголок MS SQL
Загляните в sys.dm_exec_requests и столбцы percent_complete, estimated_completion_time
источник

P

Paulerkab in SqlCom.ru - уголок MS SQL
всем привет! подскажите пожалуйста как можно оптимизировать часть скрипта. Понимаю что использовать not in (select…) плохо, но другой вариант в голову не приходит

Например, а таблице @tbl есть строки с id 1,2,3,4,5.
В таблице FM_BILLDET есть строки со связью с таблицей FM_CLINK_PATIENTS (в @tbl содержаться id из этой таблицы) для id 3,4,5.
Нужно удалить строки 1,2, остальные не трогать.

delete from FM_CLINK_PATIENTS where FM_CLINK_PATIENTS_ID in (select tbl1.FM_CLINK_PATIENTS_ID from @tbl tbl1
where tbl1.FM_CLINK_PATIENTS_ID not in
 (select FM_CLINK_PATIENTS_ID from FM_BILLDET
  where FM_BILLDET.FM_CLINK_PATIENTS_ID in (select FM_CLINK_PATIENTS_ID from @tbl)))

эта часть работает, но выполняется очень долго, а иногда вообще может повиснуть
источник

DS

Denis Suhotin in SqlCom.ru - уголок MS SQL
У табличных переменных фиксированная оценка количества строк, попробуйте использовать вместо этого временную таблицу, возможно будет более удачный в Вашем случае план.
источник

DS

Denis Suhotin in SqlCom.ru - уголок MS SQL
Так вообще проверьте, есть ли индекс на FM_CLINK_PATIENTS_ID.
источник

KT

Konstantin Taranov in SqlCom.ru - уголок MS SQL
EXISTS всегда предпочтительнее IN
в вашем конкретном случае еще EXCEPT можно попробовать или JOIN
источник

bc

bad coder in SqlCom.ru - уголок MS SQL
Привет, подскажите пожалуйста, нужно ли знание основ ТВ и мат статистики для работы с SQL?
источник

bc

bad coder in SqlCom.ru - уголок MS SQL
Заранее извиняюсь если вопрос тупой, я новичок
источник

I

ILYA in SqlCom.ru - уголок MS SQL
Да нет, только для каких либо спец задач. Так там реляционная алгебра
источник

bc

bad coder in SqlCom.ru - уголок MS SQL
Спасибо
источник

HY

Houng Young in SqlCom.ru - уголок MS SQL
Я думаю это будет большим плюсом для дата аналитика, больше математики лучше работают мозги
источник
2021 May 06

VB

Vitaliy Bajenov in SqlCom.ru - уголок MS SQL
Добрый день!
подскажите куда копать по исправлению ошибки?
В инструкции DML отсутствует запись в индексе с идентификатором 1 таблицы с идентификатором 2146822710 в базе данных "DDS" из-за взаимодействия с другой транзакцией. Если ошибка продолжит возникать, попробуйте использовать повторяющиеся операции чтения или более высокий уровень изоляции.
источник