mysql 可以在 uptime int(11) not null 上加索引吗?

用户昵称不能为空 2017-06-19 02:18:37
有一段SQL执行:


MariaDB [db2_art]> explain SELECT * FROM `tt_art`
WHERE ((`status` IN (1, 2))
OR ((`status`=-2) AND (`uptime` > 1497420704))
OR ((`status`=0) AND (`uptime` > 1497766304))) AND (`uptime` > 1482300704);



字段 uptime是存放文章最后更新时间,可以在这个上面加索引吗?
表 info的 已经加了索引 status 、uptime之后的 explain


+------+-------------+----------+-------------+------------------------+------------------------+---------+------+--------+-------------------------------------------------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+------+-------------+----------+-------------+------------------------+------------------------+---------+------+--------+-------------------------------------------------------+
| 1 | SIMPLE | tt_art | index_merge | idx-tt-status,uptime | idx-tt-status,uptime | 2,4 | NULL | 272407 | Using sort_union(idx-tt-status,uptime); Using where |
+------+-------------+----------+-------------+------------------------+------------------------+---------+------+--------+-------------------------------------------------------+
1 row in set (0.00 sec)



...全文
176 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjcxc 2017-06-20
  • 打赏
  • 举报
回复
可以加,加索引没什么限制的

56,687

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧