表记录被锁住,,,

Newlychen 2012-12-05 08:03:28
加精
1、select * from A where ccdate between '2011-01-01' and '2011-12-31'--记录11000,耗时31秒

2、select * from A where ccdate between '2012-01-01' and '2012-03-31'--记录880,耗时55分钟

请问是否有什么东东锁住了between '2012-01-01' and '2012-03-31' 这段时间的数据?
...全文
2069 60 打赏 收藏 转发到动态 举报
写回复
用AI写文章
60 条回复
切换为时间正序
请发表友善的回复…
发表回复
jack_110_jack 2013-02-20
  • 打赏
  • 举报
回复
时间长了不应该数据少了,加上 with (nolock) 后分段查询下试试 1、select * from A with (nolock) where ccdate between '2011-01-01' and '2011-12-31' 2、select * from A with (nolock) where ccdate between '2012-01-01' and '2011-12-31 union all select * from A with (nolock) where ccdate between '2011-12-31' and '2012-03-31
小新别走 2013-01-11
  • 打赏
  • 举报
回复
这个可以有的。
Kilin_Zhang 2012-12-13
  • 打赏
  • 举报
回复
WITH(NOLOCK) 正解
xiaoxiangqing 2012-12-11
  • 打赏
  • 举报
回复
执行的时候,用sp_lock查看一下
YHL27 2012-12-11
  • 打赏
  • 举报
回复
路过,学习下。。
rfq 2012-12-11
  • 打赏
  • 举报
回复
1、看一下执行计划 , 如果缺少索引建立索引 2、如果数据量不是很大, 如果执行时间很差,可能是发生了阻塞
LAONINGA098 2012-12-11
  • 打赏
  • 举报
回复
路过学习一下
tonghuamy 2012-12-10
  • 打赏
  • 举报
回复
学习了,谢谢上面的回答
mbugaifc 2012-12-10
  • 打赏
  • 举报
回复
LianXiangTeHuiDian 2012-12-10
  • 打赏
  • 举报
回复
不错不错的值得借鉴
linwaterbin 2012-12-09
  • 打赏
  • 举报
回复
有可能存在高水位线,数据量反而大
xiaocongzhi 2012-12-09
  • 打赏
  • 举报
回复
CREATE CLUSTERED INDEX 在ccdate字段添加聚集索引试试
mzbao001 2012-12-08
  • 打赏
  • 举报
回复
看一看 我们啦参考哈
ChinaITOldMan 2012-12-08
  • 打赏
  • 举报
回复
1、对ccdate建立索引 CREATE CLUSTERED INDEX mycol_ccdate_index ON A(ccdate) 2、查询select后面*换成较少的需要的字段试试 select col1,col2 from A where ccdate>'2012-01-01' and ccdate<='2012-03-31'
JeyDF 2012-12-08
  • 打赏
  • 举报
回复
写的真是好,不是一般的好
zoffor 2012-12-07
  • 打赏
  • 举报
回复
一般查询超出预期时间久赶紧停止了 。。。还等55分钟
雕虫大计 2012-12-07
  • 打赏
  • 举报
回复
看一下数据库服务器的CPU和内存,你这数据也该也不是太多
longbi141 2012-12-07
  • 打赏
  • 举报
回复
这代码写得挺神。
黄_瓜 2012-12-07
  • 打赏
  • 举报
回复
应该是被其它操作阻塞了 当时没找到,现在肯定就找不到了
qinghanghandi 2012-12-07
  • 打赏
  • 举报
回复
在此享受多多
加载更多回复(34)

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧