可能因为工作的原因 接触数据库这块比较少,之前都是做程序这块,数据库这块都有专门的人来做 分工都很明细 所以对数据库这一块完全不了解。前段时间 去面试了几家公司 几乎都是在数据库这块挂掉的 连个简单的SQL都写不出来,所以现在决定恶补数据库这块。
最近又接触到lucene 里面要用到索引 现在想问问数据库大牛们 数据库索引到底是个什么东西,用在哪些地方 有什么优势?
最近又接触到lucene 里面要用到索引 现在想问问数据库大牛们 数据库索引到底是个什么东西,用在哪些地方 有什么优势?
解决方案 »
- 如何实现socket udp的异步?
- C#的MD5加密后的密文跟其他的密文不一样!怎么回事!
- SQL语句..dbo
- 初入C门,这段代码不能运行,错误在哪里
- 如何在.net的编辑环境里面统一调整Label或者其它控件的字体??(vs2003)
- 请教这个错误是什么原因,如何解决。"length cannot be less than zero. Parameter"
- Winform中richtextbox的问题
- GridView的Bug?
- C#链接数据库
- 调用外部程序怎么不能显示啊?
- C# winform 是用换肤还是用wpf好?
- 继续闲聊一下值类型和引用类型的差异吧,你认为int所谓值类型的特性何在?(闲谈罢了,任何过激观点别当真)
索引加快了查询记录却减慢了数据更新速度,本身还占用一定的存储空间。
2、对于增删改操作多的表尽量少用索引;
3、对于查询操作多的表尽量多用索引,特别的where条件引用的字段要用4、通常后一次有索引的会比前一次快,之于快多少取决于数据量。比如:100条数据,没有索引时平均需要查询50次(从头到尾逐个比较),有索引则只需要比较大约7次(类似二分查找法);
如果是1000条数据的话,没有索引时平均需要查询500次,有索引则只需要比较大约11~12次。
当然对于数据量巨大(超百万行)的数据表,数据库中的索引可能用B+树,那么通常约4次比较就可确定数据范围(在200条以内)。要注意的是查询语句写得不好,系统就无法利用索引,比如:把字段名放在了一个函数中、某些“<>”、等等