查看: 7171|回复: 5

表如何优化,字段的长度影响查询速度么

[复制链接]
论坛徽章:
57
生肖徽章:鸡
日期:2007-01-25 16:51:36生肖徽章2007版:兔
日期:2009-05-22 17:40:35生肖徽章2007版:鼠
日期:2009-05-26 08:52:09生肖徽章2007版:猴
日期:2009-06-15 10:22:54生肖徽章2007版:龙
日期:2009-06-16 16:00:132010广州亚运会纪念徽章:乒乓球
日期:2010-11-22 15:42:522010广州亚运会纪念徽章:现代五项
日期:2010-12-06 11:00:362010广州亚运会纪念徽章:垒球
日期:2010-12-06 11:02:182010广州亚运会纪念徽章:乒乓球
日期:2011-04-07 14:48:342011新春纪念徽章
日期:2011-04-15 18:07:34
发表于 2010-4-12 14:51 | 显示全部楼层 |阅读模式
有个1千多万行的表,主键健在一个长度为64的varchar2上,
会不会影响查询速度。
论坛徽章:
7
授权会员
日期:2010-12-06 19:50:26数据库板块每日发贴之星
日期:2011-09-03 01:01:01迷宫蛋
日期:2011-09-08 16:30:08ITPUB十周年纪念徽章
日期:2011-11-01 16:24:04玉石琵琶
日期:2012-02-21 15:04:38最佳人气徽章
日期:2012-03-13 17:39:18
发表于 2010-4-12 14:59 | 显示全部楼层
影响不大。

使用道具 举报

回复
论坛徽章:
22
2010新春纪念徽章
日期:2010-03-01 11:08:33马上有对象
日期:2014-02-19 11:55:14马上有钱
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14马上有车
日期:2014-02-19 11:55:142012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:092012新春纪念徽章
日期:2012-02-13 15:08:09
发表于 2010-4-12 15:59 | 显示全部楼层
还是有部分影响的..

1. 具体是如何查询的..不需要查询的字段不要取出来! 经常使用的字段尽量在创建时放在前面!

2. 使用varchar2(64)作为主键, 涉及到
  1). 具体的数据平均长度如何, 这样严重影响索引的大小, 也会影响索引的深度.
  2). 这么设计的目的如何? 使用sequence生成的number主键, 存储与查找效率都会稍高, 但差距确实不会很大..

使用道具 举报

回复
论坛徽章:
57
生肖徽章:鸡
日期:2007-01-25 16:51:36生肖徽章2007版:兔
日期:2009-05-22 17:40:35生肖徽章2007版:鼠
日期:2009-05-26 08:52:09生肖徽章2007版:猴
日期:2009-06-15 10:22:54生肖徽章2007版:龙
日期:2009-06-16 16:00:132010广州亚运会纪念徽章:乒乓球
日期:2010-11-22 15:42:522010广州亚运会纪念徽章:现代五项
日期:2010-12-06 11:00:362010广州亚运会纪念徽章:垒球
日期:2010-12-06 11:02:182010广州亚运会纪念徽章:乒乓球
日期:2011-04-07 14:48:342011新春纪念徽章
日期:2011-04-15 18:07:34
 楼主| 发表于 2010-4-12 18:03 | 显示全部楼层
具体数据平均长度固定,

使用道具 举报

回复
招聘 : 数据库管理员
认证徽章
论坛徽章:
20
祖国60周年纪念徽章
日期:2009-10-09 08:28:00数据库板块每日发贴之星
日期:2011-02-20 01:01:01ITPUB季度 技术新星
日期:2011-04-02 10:31:09ITPUB十周年纪念徽章
日期:2011-11-01 16:24:042012新春纪念徽章
日期:2012-01-04 11:54:26玉石琵琶
日期:2012-02-21 15:04:38最佳人气徽章
日期:2012-03-13 17:39:18ITPUB 11周年纪念徽章
日期:2012-10-09 18:09:192013年新春福章
日期:2013-02-25 14:51:242011新春纪念徽章
日期:2011-02-18 11:43:33
发表于 2010-4-12 20:27 | 显示全部楼层
这个不好说。。。。感觉影响应该是很小的。。。放心搞吧

使用道具 举报

回复
论坛徽章:
86
2015中国数据库技术大会纪念徽章
日期:2015-04-24 16:04:24马上有车
日期:2014-02-19 11:55:14马上有车
日期:2014-02-18 16:41:112014年新春福章
日期:2014-02-18 16:41:11优秀写手
日期:2013-12-18 09:29:11日产
日期:2013-10-17 08:44:39马自达
日期:2013-08-26 16:28:022013年新春福章
日期:2013-02-25 14:51:24ITPUB 11周年纪念徽章
日期:2012-10-23 16:55:51马上有房
日期:2014-02-19 11:55:14
发表于 2010-4-12 20:35 | 显示全部楼层
varchar2(64)做主键,不知道数据的分布情况如何?如果是前导为0的字串,并且超过32字节,oracle只会统计前32位,可能会导致CBO走错执行计划。

至于varchar2类型,如果没有数据的话,是不会占用什么存储空间的,因此,也就不会导致读取效率的降低。

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

SACC2019中国系统架构师大会

【数字转型 架构演进】SACC2019中国系统架构师大会,7折限时优惠重磅来袭!
2019年10月31日~11月2日第11届中国系统架构师大会(SACC2019)将在北京隆重召开。四大主线并行的演讲模式,1个主会场、20个技术专场、超千人参与的会议规模,100+来自互联网、金融、制造业、电商等领域的嘉宾阵容,将为广大参会者提供一场最具价值的技术交流盛会。

限时七折期:2019年8月31日前


----------------------------------------

大会官网>>
TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表