账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    mysql索引为null为什么影响效率?
    31
    0

    听说 mysql 的索引不存储 null ,那么我的程序是不是只要不用 where xx = null 之类的就行了?
    null 查询效率的影响,是只体现在查询值为 null 本身的行上,还是对全部行都有影响?


    其实事情是这样的,我有一个 user 表,唯一主键为 id ,但是有 email 和 OAuthId 两个列,我网站的注册用户通过 email 登录,社会化登录(QQ、微信、微博)登录就通过 OAuthId 识别。
    显然 email 和 OAuthId 不能放在不同的表,因为我是用 id 作为数据库中用户唯一标识符,放在不同的表那 id 就乱了。
    现在问题来了,我的 email 和 OAuthId 都需要设置唯一索引,但是通过 email 注册的用户没有 OAuthId ,通过社会化登录的用户不一定绑定了 email,所以我需要给他们一个默认值。但他们又是唯一索引,所以我只能设置为可以为空。但是听说设置为可以为空会影响索引效率,请问有更好的设置办法吗?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部