首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
Coding
V2EX  ›  问与答

请教数据库建立索引

  •  
  •   petelin · 2017-09-08 15:18:40 +08:00 · 928 次点击
    这是一个创建于 824 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有两个列, status(5 中状态), create_time

    查询的时候 select * from - where status=1 and create_time > '-';

    因为 status = 1 的记录比较少,所以想 status 在前(这样直接选出几天记录然后在筛选), 但是书上说应该给选择性多的列建立索引, 像性别这种就不适合.

    请问, 索引顺序是 status 在前好, 还是 create_time 在前好?

    2 回复  |  直到 2017-09-14 18:09:52 +08:00
        1
    mm163   2017-09-08 15:59:43 +08:00
    create_time 建索引,查询的时候 create_time 在前。
    status 建索引没意义。
        2
    petelin   2017-09-14 18:09:52 +08:00
    @mm163 我举个例子吧, 如果有 100 万个 status 为 0 的记录, 有一条 stattus 为 1 的记录, 那么查找 status 为 1 的记录能不能直接命中呢? 如果能的话, 那性能提升就很明显.
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3109 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 21ms · UTC 11:10 · PVG 19:10 · LAX 03:10 · JFK 06:10
    ♥ Do have faith in what you're doing.