Предполагая, что это для SQL Server ...
Более современный способ писать было бы
insert into b
select *
from a with (readuncomitted)
Есть много рисков и последствий от использования этого. Стоит ли считать, что таблица a всегда будет давать согласованные результаты при использовании readuncommitted
, более поздней версии NOLOCKS
.
Даже при этом вы все еще можете видеть тупик, в зависимости от того, что еще происходит с этими таблицами в то время. Вы устраняете одну потенциальную причину взаимоблокировок, читая незафиксированные данные и не удерживая блокировки на таблице a при чтении.
Смотрите этот вопрос для некоторых деталей:
Is nolock (SQL Server) hint bad practice?
Это было также очень плохо написание и форматирование. По крайней мере, используйте правильную капитализацию. – Corbin
Кластеризация - это совершенно отдельный вопрос? Кроме того, считали ли вы, что Google для синтаксиса nolock? Чтобы быть тупым, даже не беспокоясь о том, что Google для синтаксиса демонстрирует отвратительную лень в попытке выяснить вашу проблему. – Corbin
извините Corbin, я сделал поиск в google, тогда я нашел, что выше запроса, который не работает, поэтому я разместил здесь – Gouse