问下,,有个数据库的表,,里面有几千万的数据,,我觉得查询应该很慢,,
问题1:
但是这样查询  ......where 字段=".."  的时候很快,这是为什么
问题2:
是不是字段里面存放数字,要比存放中文查询起来快很多呢
问题3:
问下,一个表里创建了索引,,我怎么才能看见是在哪个字段创建的索引,,我在modify里面(表创建描述)里面没看见索引啊

解决方案 »

  1.   

    1.索引的缘故
    2.是的
    3.SQL 脚本里可以看到!
      

  2.   

    问题1:
    但是这样查询 ......where 字段=".." 的时候很快,这是为什么
    ==>
    字段上有索引吧..并且利用到了索引...问题2:
    是不是字段里面存放数字,要比存放中文查询起来快很多呢
    ==》
    似乎有字段类型是数字的要比字段类型是字符的处理起来快这个说法问题3:
    问下,一个表里创建了索引,,我怎么才能看见是在哪个字段创建的索引,,我在modify里面(表创建描述)里面没看见索引啊
    ==》
    你可以通过视图比如:sysindexes 或者 sys.indexes 查看~
      

  3.   

    问题1:
    但是这样查询 ......where 字段=".." 的时候很快,这是为什么
    A:无where,则全表扫描,相当于你在图书馆里要把所有的书都看一遍,几万本书你看完一遍时间很长。
      有where,假如你要找一本书,正好管理员告诉你这本书在XX书架,你过去找到书架就能看到书。管理员好比索引。问题2:
    是不是字段里面存放数字,要比存放中文查询起来快很多呢
    A:不会。如果是指索引和全文索引,基本可比性,就像再问猫和老鼠谁会活得久一点一样。
    问题3:
    问下,一个表里创建了索引,,我怎么才能看见是在哪个字段创建的索引,,我在modify里面(表创建描述)里面没看见索引啊select * from sys.indexes
      

  4.   

    我不知道我看的地方对不对,,我是点击“Script table as”->"Create to"->"NewQuery editor window",,  
      

  5.   

    select * from sys.indexes  这个怎么看的啊
      

  6.   

    对3问题仍可以通过如下方式直观了解
    SP_HELPINDEX 表名 或者 SP_HELPINDEX '表名'
    --结果集的index_name描述索引名,index_escription描述了索引类型,index_keys描述了索引的字段