sqlite命令sql优化:mysql之多表limit查询
题⽬:有活动主表A,活动ID(id),活动名称name;活动⼦表B,活动ID(activeId),参与⼈员ID(userId);⼤量数据下考虑sql执⾏性能,每页10条显⽰10条
活动表A
活动表B
⼀般情况下的sql语句:
select a.name,count(b.activeId)
lenovo settingsfrom
a left joinpython和vb的代码可以通用吗
b on a.id = b.activeId
group by b.activeId limit0,10
使⽤左连接显⽰活动表的所有数据(显⽰所有活动),活动表的id=活动⼦表的activeId ,根据活动⼦表activeId分组,count函数计算数量。最后limit分页。
优化之后的sql语句:
mysql语句多表查询select count(b.activeId),aa.name
from
(select a.id,a.name from a limit0,10) aa left join b on aa.id = b.activeId
group by b.activeIdpython正则表达式group
api中文文档
先对活动表进⾏分页,查询⼗条,拿着10条数据再和活动字表进⾏左查询,这样直接减少了查询的数量,⼤⼤优化提⾼了查询速度。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论