免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3802 | 回复: 3
打印 上一主题 下一主题

请教一个存储过程的写法(用游标批量处理数据)。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-01-26 11:14 |只看该作者 |倒序浏览
各位好,想请教一个存储过程的写法,如下:
有一张表客户信息表custom_info(假设就一个字段客户识别号custom_id),里面放了三百多万条记录。我现在想根据客户号在其他表里取出该客户的其他信息,于是我用游标打开custom_info,然后每次取出一条,根据custom_id去找,比如找身份证号从表A里找,家庭住址从表B里找,邮编从表C里找,等等。
还有个可能情况,就是每个待查找的字段,都有多张表可供查找。比如,身份证号,若表A里没有,要去表A1里找,家庭住址若表B里没有,要去表B1里找,等等。
这样的话,从游标里每次fetch一条出来,去执行这么多次select的话,效率大打折扣。我试了一下,每秒钟大概就只能处理几十条,太慢了。
不知道各位有没有什么好的办法可以处理。
不胜感激!

[ 本帖最后由 zdlxx 于 2010-1-26 11:16 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2010-01-26 11:32 |只看该作者
自己顶一下,在线等待答案。。

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
3 [报告]
发表于 2010-01-26 21:33 |只看该作者
游标嵌套的话,效率是比较慢。

论坛徽章:
0
4 [报告]
发表于 2010-01-29 12:55 |只看该作者
数据库一开始就没设计好,
身份证号,住址,邮编,都是同等地位的数据,为什么会存在不同的表里呢?而且还有A表没有,A1表有的情况。

2个建议:
1,各个表之间可以连接起来的话,就用表连接操作。一次select从多张表取到需要的信息。
2,建一个view吧,或者弄一个临时表。结构是custom_id,id,address,zipcode等...
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP