索引列是中文 在name一栏里有硬盘 显卡 内存 声卡 电源 主板...等10来个分类 当查询其中一类时 select * from computer where type='显卡' LIMIT  0,10;问题:1 如果type一栏用英文是否查询速度会快点?     2 是否有必要为每个小类建立一个表?     3  未来信息量多大未知,另外还有其他的大类,比如家用电器 汽车 家具等等 每个大类都包含10几个小类 如果每个小类都建立一个单独表 那表的数量是不是太大了? 
   
   注:type一栏是索引列.  
                                   谢谢!

解决方案 »

  1.   

    1. 如果你的“分类”项是可枚举的值,那肯定是要用整数来表示,速度最快。至于英文,似乎跟用中文差别不大(也许能快一点,但应该是同一个数量级的)2. 每个小类建一个表,应该是不需要的。真要分别建表的话,那也是因为各类对象的属性不一样,而不会是因为所谓“查询速度”。3. 同 2.
    ————————————————————————————————
    基于CSDN论坛提供的插件扩展功能,自己做了个签名档工具,分享给大家,欢迎技术交流 :)
      

  2.   

    所谓“可枚举”就是指“有限个值”,比如“性别”这个属性就可以枚举为“男/女/未知”(举例而已,实际系统根据具体需求可能有不同的枚举项)。对于这种情况,一般是单独建一个“类目表”,主键为整数,在其它的表中,用这个整数值代表相应的类目。
    ————————————————————————————————
    基于CSDN论坛提供的插件扩展功能,自己做了个签名档工具,分享给大家,欢迎技术交流 :)