查询语句

rorom 2010-03-20 04:42:25
这个sql有人帮我优化一下吗?

select * from ky_message where msg_to='系统' or msg_to=? or msg_title=? or msg_title=? or msg_title=? order by msg_id desc
...全文
86 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
MicalLi 2010-04-02
  • 打赏
  • 举报
回复
select *from ky_message where msg_to in ('系统','?')
or msg_title in ('?','?','?')
order by msg_id desc
rorom 2010-04-01
  • 打赏
  • 举报
回复
哦,索引是没有的,只有msg_id是主键.
iamayuan 2010-03-23
  • 打赏
  • 举报
回复
学习学习
jsjhushilei 2010-03-22
  • 打赏
  • 举报
回复
show index from ky_message
guangzi477273 2010-03-21
  • 打赏
  • 举报
回复
select * from ky_message where msg_to='系统' or msg_to=? or msg_title=? or msg_title=? or msg_title=? order by msg_id desc
给msg_id建立clustered index(desc)
并使用in如:
select *from ky_message where msg_to in ('系统','?')
or msg_title in (?,?)
可以考虑使用union句子合并查询比如:
select * from ky_message where msg_to in('系统','?')
union
select * from ky_message where msg_title in(?,?);
ACMAIN_CHM 2010-03-20
  • 打赏
  • 举报
回复
show index from ky_message贴出来你的索引情况。

56,681

社区成员

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

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