批量删除数据库表中数据

qinzhuhua 2010-10-13 03:56:52
我想根据一个时间段删除A表中的数据,由于A中数据量非常大,
用delete from A where StartTime between(时间)and(时间)删除超时,所以要求按照小时来批量删除,
就是一个小时一个小时的循环删除数据,这个要怎么用存储过程来实现?
请大家帮帮忙,万分感谢!!
...全文
277 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
mybossmyway 2010-10-13
  • 打赏
  • 举报
回复
Delete From A Where DateDiff(Day,StartTime,@temp_Date)=0 And DatePart(hour,StartTime)=@temp_Hour
a220315410 2010-10-13
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 jetable 的回复:]
一次性删除也是可以的,你把执行此操作的时间放在凌晨,数据压力较小的时候,然后在时间上建立索引,速度应该有提高
[/Quote]
索引的确能够大大提高查询和操作的速度,不过建立和维护也是不小的麻烦。
关于LZ要的游标的例子,可以看看
http://zhidao.baidu.com/question/86521963.html?fr=ala0
挺简单明了的
jetable 2010-10-13
  • 打赏
  • 举报
回复
一次性删除也是可以的,你把执行此操作的时间放在凌晨,数据压力较小的时候,然后在时间上建立索引,速度应该有提高
deyygywxf 2010-10-13
  • 打赏
  • 举报
回复
LZ,在存储过程中通过循环删除,以小时递增time1,time2两个时间就行
LZ试试应该可以~
epjack 2010-10-13
  • 打赏
  • 举报
回复
delete from A where StartTime=datediff(hour,time1,time2)
qinzhuhua 2010-10-13
  • 打赏
  • 举报
回复
没人来回答了吗????
ggxboy 2010-10-13
  • 打赏
  • 举报
回复
学习了
qinzhuhua 2010-10-13
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 wuyq11 的回复:]
通过查询
遍历删除
[/Quote]

能给个例子吗?因为我从来没用过游标cursor
先说谢谢了
qinzhuhua 2010-10-13
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zhang523012313 的回复:]
delete from A where StartTime=datediff(hour,time1,time2)
LZ看看,可以结贴给分啦
[/Quote]

你没看清我的意思,举个例:我要删除2010-10-01至2010-10-02的数据,那么我的程序要这样实现:
先删除完2010-10-01的0点的数据,接着是1点的数据,2点的数据.......直到删除完这个时间段的数据,
是因为数据量大,我要分批删除,不是要一次性删完。
字段StartTime里保存的是时间,是有时分秒的。
wuyq11 2010-10-13
  • 打赏
  • 举报
回复
通过游标cursor查询
遍历删除
zhang523012313 2010-10-13
  • 打赏
  • 举报
回复
delete from A where StartTime=datediff(hour,time1,time2)
LZ看看,可以结贴给分啦
qinzhuhua 2010-10-13
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 langxian_1129 的回复:]
将delete放到存储过程里边,然后创建一个job ,每隔一小时 去执行这个存储过程。
[/Quote]

不是每隔一小时删除一次,是删除时按照小时来循环删除
langxian_1129 2010-10-13
  • 打赏
  • 举报
回复
将delete放到存储过程里边,然后创建一个job ,每隔一小时 去执行这个存储过程。
q107770540 2010-10-13
  • 打赏
  • 举报
回复
datediff(hour,time1,time2)

111,092

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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