关于SQL Server的WITH(NOLOCK)和(NOLOCK)
The difference is that you should be using the syntax WITH (NOLOCK) (or WITH (<any table hint>)). Why?
-
Without
WITHis deprecated. From Table Hints on MSDN:Omitting the WITH keyword is a deprecated feature: This feature will be removed in a future version of Microsoft SQL Server. Avoid using this feature in new development work, and plan to modify applications that currently use this feature.
-
from table1 nolockdoes not apply a hint at all - that's an alias. For example:SELECT nolock.name FROM sys.objects nolock ORDER BY nolock.name;Notice that I can use
nolockas an alias. No hint is applied here. -
from table1 as mytable nolockis invalid syntax in modern versions of SQL Server.Msg 1018, Level 15, State 1, Line 12
Incorrect syntax near 'nolock'. If this is intended as a part of a table hint, A WITH keyword and parenthesis are now required. See SQL Server Books Online for proper syntax.

浙公网安备 33010602011771号