首页 新闻 会员 周边 捐助

MSSQL WITH(NOLOCK)无效

0
[已解决问题] 解决于 2019-06-24 09:28

请教个SQL的问题:
我的DB是MsSql,有张表一直在往里插入数据,我想看表中的实时数量于是写了以下SQL:
SELECT COUNT (1) FROM JDSkuDetails WITH(NOLOCK)
特意加了WITH(NOLOCK),但还是查询不出数据一直卡着不动。
请问这是什么原因啊?

补充:刚刚试了一下select * 可以取出数据,但是count(1)取不出来。

haoyk的主页 haoyk | 菜鸟二级 | 园豆:218
提问于:2018-01-11 16:53
< >
分享
最佳答案
0

“有张表一直在往里插入数据,我想看表中的实时数量于是写了以下SQL”,

说明这种表被插入数据的事务锁住了,所以查询不出数据一直卡着不动

奖励园豆:5
名字什么都是浮云 | 菜鸟二级 |园豆:327 | 2018-01-15 17:23
其他回答(2)
0

COUNT (1)改成COUNT (‘主键名称’)试试,(1)和(*)这里是代名词不是具体的列,估计就和WITH(NOLOCK)冲突了

数据酷软件 | 园豆:130 (初学一级) | 2018-01-11 16:57

试过了,还是不行。

支持(0) 反对(0) haoyk | 园豆:218 (菜鸟二级) | 2018-01-11 16:58
0

表里有null的行吗

ShaneJim | 园豆:206 (菜鸟二级) | 2018-01-11 18:27
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册