各位仁兄,面对像   "SELECT   FROM   table   WHERE   a   >   10   and   a   <   100   and   b   >   10   and   b   <   1000 "   这类涉及多(字段)不等式的(WHERE)查询,哪个数据库支持最好一些,且能对此类应用提供相应的建立多维索引的方法?条件是这种数据库最好是小(中)型的,   本地嵌入式的最佳,比方说像SQLITE等。 在我印象里通用的数据库(MYSQL,   SQLITE),   都是基于B+树结构的,针对   WHERE   a   >   10   and   b   =   5,这类单不等式的查询,但是对付多不等式的查询就有点力不从心了。 请各位仁兄帮忙

解决方案 »

  1.   

    MYSQL 就可以。
    不知道你说的力不从心是干什么?你做过测试了吗?
      

  2.   

    MYSQL中只有MyISAM支持多维索引
      

  3.   

    贴出你的需求与SQL 。我帮你转化。
      

  4.   

    yueliangdao表结构:
    CREATE TABLE mytable (INT A, INT B, INT C, INT D)频繁使用的查询 (X 和 Y是任意整数, X < Y)
    SELECT *FROM myTable WHERE (A BETWEEN X AND Y, B BETWEEN X AND Y, C BETWEEN X AND Y, D BETWEEN X AND Y)
      

  5.   

    多维索引的意思是查询的时候 必须 where 子句后面每个字段都有才能用到这个索引,否则是用不到的。除非你在这个基础上还另外做了单个索引。
      

  6.   

    yueliangdao, 我明白啊, MySQL可以吗?是不是要在 CREATE INDEX的时候加个参数?
      

  7.   

    正如 withpointer  所说 你要先优化一下你的SQL 你开始写的 执行就慢
      

  8.   

    create index可以,
    alter table add key 也可以。
    你随便选。