同样的查询,为什么用SA查询速度很快,用一个普通用户就明显慢? 如题,可能会是什么原因呢?看过执行计划,一模一样。打开statistics选项对比过,中间过程也一模一样,但耗时就是不一样。谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 SQL Server 分析和编译时间: CPU 时间 = 0 毫秒,占用时间 = 0 毫秒。(616 行受影响)表 'labmain'。扫描计数 1,逻辑读取 56 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。SQL Server 执行时间: CPU 时间 = 4484 毫秒,占用时间 = 39169 毫秒。SQL Server 分析和编译时间: CPU 时间 = 0 毫秒,占用时间 = 0 毫秒。(606 行受影响)表 'labmain'。扫描计数 1,逻辑读取 56 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。SQL Server 执行时间: CPU 时间 = 4500 毫秒,占用时间 = 45369 毫秒。-------------------------------------------------------------------------SQL Server 分析和编译时间: CPU 时间 = 0 毫秒,占用时间 = 0 毫秒。(598 行受影响)表 'labmain'。扫描计数 1,逻辑读取 56 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。SQL Server 执行时间: CPU 时间 = 2188 毫秒,占用时间 = 2896 毫秒。SQL Server 分析和编译时间: CPU 时间 = 0 毫秒,占用时间 = 0 毫秒。(606 行受影响)表 'labmain'。扫描计数 1,逻辑读取 56 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。SQL Server 执行时间: CPU 时间 = 2237 毫秒,占用时间 = 2510 毫秒。 我也感觉这不太可能,他又不会分帐号优先级! 还有感觉你两次查询的行数不一样! 你查询的时候是不是又数据修改或插入...有数据修改或插入..你的查询就必须等待..等另一个事务完成后才会执行你的查询! 表后都加 with(nolock)看看.. 用 sql server profiler跟踪一下具体慢在哪里吧 SQL Server查询速度慢原因及优化方法:http://zhoubinit.blog.51cto.com/1589789/325492 根据查询结果行数不同,我觉得你在查询的过程中有可能受到其他操作的影响了。干脆先清空缓存,然后将服务器设置为单用户模式,确保就你一个能连接并使用数据库,然后再执行不同帐号下的查询语句看看结果。PS MSSQL用到现在,没碰到过查询有帐号优先级的,肯定是其他原因造成的。 9.0没有限制用户使用资源的功能,你可以换一台pc,从这台pc上连接到那台sql server,看看帐户是否有差别。 这个有可能,但是按理来说发生的概率应该是平均的,被普通用户遇上或者被sa遇上不应该有明显差别。不管它了,已经上case了,谢谢各位回复 有sql2008的进来帮下忙 求一sql语句 语句优化问题 成绩表对应分数相加 有关SQL查询效率问题 删除表里的内容的,这句SQL语句怎么写 关于join 条件的查询 這三個表該怎么查詢?請高手賜教 sql中视图的问题 求一个高效率一点的sql,在线等待中 关于SQL求余的问题 sql server 2000 数据分类汇总
CPU 时间 = 0 毫秒,占用时间 = 0 毫秒。(616 行受影响)
表 'labmain'。扫描计数 1,逻辑读取 56 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。SQL Server 执行时间:
CPU 时间 = 4484 毫秒,占用时间 = 39169 毫秒。
SQL Server 分析和编译时间:
CPU 时间 = 0 毫秒,占用时间 = 0 毫秒。(606 行受影响)
表 'labmain'。扫描计数 1,逻辑读取 56 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。SQL Server 执行时间:
CPU 时间 = 4500 毫秒,占用时间 = 45369 毫秒。-------------------------------------------------------------------------SQL Server 分析和编译时间:
CPU 时间 = 0 毫秒,占用时间 = 0 毫秒。(598 行受影响)
表 'labmain'。扫描计数 1,逻辑读取 56 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。SQL Server 执行时间:
CPU 时间 = 2188 毫秒,占用时间 = 2896 毫秒。
SQL Server 分析和编译时间:
CPU 时间 = 0 毫秒,占用时间 = 0 毫秒。(606 行受影响)
表 'labmain'。扫描计数 1,逻辑读取 56 次,物理读取 0 次,预读 0 次,lob 逻辑读取 0 次,lob 物理读取 0 次,lob 预读 0 次。SQL Server 执行时间:
CPU 时间 = 2237 毫秒,占用时间 = 2510 毫秒。
表后都加 with(nolock)看看..
干脆先清空缓存,然后将服务器设置为单用户模式,确保就你一个能连接并使用数据库,然后再执行不同帐号下的查询语句看看结果。
PS MSSQL用到现在,没碰到过查询有帐号优先级的,肯定是其他原因造成的。
这个有可能,但是按理来说发生的概率应该是平均的,被普通用户遇上或者被sa遇上不应该有明显差别。不管它了,已经上case了,谢谢各位回复