教你轻松掌握如何从DB2的图表中删除N个行

资讯 驱动中国 若水 479 次阅读 0 条评论
分享 Q

问:“怎样从DB2图表中删除N个行?”

 

答:“首先,你需要更新你的"关系型"数据库管理系统的知识. 在图表中没有"顶端"或"底端"的N个行的概念. 但对结果集有顶端或底端的概念. 你可以用FETCH FIRST N ROWS ONLY子句来得到开始的N个行,但是得到底端的N个行是更困难的问题.为实现这点,你需要用可滚动的指针.可滚动的指针允许你在不用读取/得到所有的行前在结果集里前后移动。我建议你阅读DB2 SQL参考手册和DB2应用程序手册中可滚动的指针的内容(所有的DB2手册可以从网上免费下载)。基本上你应该用可滚动的指针的FETCH LAST 语句,再用FETCH PRIOR语句循环N-1次。那将给出任何结果集的“底端”的N个行”(分类或未分类的)。

 

如果你要从图表里删除N个行。我猜想你会问如何在DELETE的WHERE条件处限制行子集的删除,答案是否定的。你必须在同样WHERE条件处注明FOR UPDATE OF来打开一个指针,然后你需要在循环N次的行处打开FETCH和DELETE WHERE CURRENT OF指针。当然这意味着你必须重写一个程序。

版权声明:本文由驱动中国整理发布,转载需注明出处与原文链接。如有疑问请联系 editor@qudong.com
本文价值 成为第一个评分的人
登录后为本文打分
网友评论0 条评论
正在回复 的评论取消
评论加载中…
🔐

登录后参与互动

评论、点赞均可赚积分
连续签到、邀请好友也有奖励 🎁

电脑端: 微信扫码登录 微信内: 一键登录

微信扫一扫

打开微信「扫一扫」,分享本文到朋友圈或好友