现在有三个表连接查询select from a where (a 条件) left join b on a.id=b.id left join c on a.id=c.id
其中 a表 里面有 50万数据 根据条查出来 1000多 b表里面有10万 数据 c表里也是10万数据,如何进行查询优化,减少查询量?
其中 a表 里面有 50万数据 根据条查出来 1000多 b表里面有10万 数据 c表里也是10万数据,如何进行查询优化,减少查询量?
解决方案 »
- 请高手指点下,这个sql有点不好写。
- jdbc 相同结构的数据库表对比
- 安装mysql时,出现注册帐号的提示,这一步可以跳过吗?有图,谢谢
- 为什么这麽简单的存储过程报错呢?
- 眼珠子都快看出来了,都没看出错在哪?关于mysql插入
- 如何在vc中配置mysql++环境?多谢!!
- 不好意思问太挫的问题,存储过程 视图 实际要咋用
- 这样的文件上传程序为什么当MySQL在另一台机器上时就不行(PHP+MYSQL)
- 奇怪的 Duplicate entry '0' for key 'PRIMARY' 问题!~
- mysql56总是出现1067错误
- 从hdfs中导出数据到mysql中在navicat显示乱码怎么办?
- 根据条件判断更新,无数据的更新为零,如何构造,谢谢
参考一下这个贴子的提问方式http://bbs.csdn.net/topics/320211382
1. 你的 create table xxx .. 语句
2. 你的 insert into xxx ... 语句
3. 结果是什么样,(并给以简单的算法描述)
4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。
按照你说的方式,就是先用条件过滤a表,减少返回的数据,如果速度慢,可以考虑给条件字段上加索引。然后,关联b表,c表,关联字段上最好也创建索引