2 haisheng003 haisheng003 于 2016.09.22 12:38 提问

sql查询语句优化求解答?

现在有三个表连接查询

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万数据,如何进行查询优化,减少查询量?

4个回答

zy_281870667
zy_281870667   Ds   Rxr 2016.09.22 13:14

表数量大的话,建议分批查询,数据量大的表的关联查询很耗时耗性能

yicp123
yicp123   2016.09.22 13:44

用小表驱动大表,再加上合适的索引
参考自:
mysql join用法及优化 http://www.data.5helpyou.com/article209.html

seeze
seeze   2016.09.22 14:36

挺久没接触这个了,我记得有一个方式是把关联方式
select from a where (a 条件) left join b on a.id=b.id
改为
select from a where (a 条件) and exist(select xx from b where b.id = a.id)
并在id字段上建索引

liuxuejava
liuxuejava   2016.09.22 16:13

我也不会,很想知道是怎么优化的

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
sql 查询语句优化
sql 查询语句优化sql 查询语句优化sql 查询语句优化sql 查询语句优化
Mysql常用30种SQL查询语句优化方法
1、应尽量避免在 where 子句中使用!=或 2、对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 3、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中n
sql语句的优化
set statistics io on select count(*) from zy_inactpatientset statistics io off 返回表的空间使用情况sp_spaceused zy_inactpatient返回统计的执行时间set statistics time on set statistics time on 用文本的方式显示执行计划set showplan
多表查询SQL 语句优化
    数据多个表关联查询时,由于表之间的连接关系(内连接、外连接、交叉连接),导致数据库服务器常常从几万条甚至更多的数据记录中查找符合条件的记录,如果sql查询语句设计不好查询的复杂度就会直线上升,甚至是指数级上升,导致查询时间长甚至失去相应,这里讲两种从sql语句优化查询的方法。1.把外连接变成交叉连接或内连接(对不起,在写改良例子的时候发现这种方法并不能改善查询的速度,这是一个错误):
Mysql查询性能优化-善用Explain语句
Mysql查询性能优化-善用Explain语句     在项目中验证sql语句执行效率的时候最直观的方式就是查看其执行时间,但是在线上环境中如果不慎运行一个效率十分低下的sql导致数据库down掉了,那就悲剧了。并且只看执行时间,并无法有效的定位影响效率的原因。因此通过EXPLAIN命令查看SQL语句的执行计划,根据执行计划可以对SQL进行相应的优化。理解SQL执行计划各个字段的含义这时候显得十
SQL 查询语句优化
SQL 查询语句优化
SQL查询优化:如何写出高性能SQL语句
1.查询的模糊匹配 尽量避免在一个复杂查询里面使用 LIKE '%parm1%'—— 红色标识位置的百分号会导致相关列的索引无法使用,最好不要用. 解决办法: 其实只需要对该脚本略做改进,查询速度便会提高近百倍。改进方法如下: a、修改前台程序——把查询条件的供应商名称一栏由原来的文本输入改为下拉列表,用户模糊输入供应商名称时,直接在前台就帮忙定位到具体的供应商,这样在调用
Oracle SQL查询优化方法1
系统优化中很重要的方面是SQL语句的优化,对于海量数据,优质的SQL能够有效的提高系统的可用性。 总结的有点罗嗦,列个简单的目录啦~ 目录   第一部分 知识准备                            第二部分 常用sql用法和注意事项                                第三部分  sql优化总结     1.  sql
对SQL语句的优化
提高sql语句的查询效率,优化sql语句,数据库查询语句优化
SQL Server 查询优化一例
前几天去客户那里做性能检查优化,发现有这样一大段SQL语句,每天会执行几千次, --一共36条相似语句,只是每条语句中的条件 病案大类 不同 select @一般医疗服务费=sum(isnull(金额,0)) from 流水帐 WITH (NOLOCK)  where 住院号=@ZYH and 项目代码 in (select 项目代码 from 收费项目表 where 病案大类='