技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> 查看专题: 子查询
    webgame行业在游戏成熟了以后,合服、混服操作是常态,随着合服、混服的次数越来越多,单个服包含之前的合服或者混服数据的db越来越大,而分析数据发现,很多玩家在游戏内注册后,没玩几个等级提升就流失了,特别是利用cpm导入那种大量用户的服,然后为了最大化利用现有资源,保护硬件上的投资,就需要清理小号的操作,清理小号的操作经历了一波三折,期间还经历过一起sql性能的“血案”,本文记录清理小号演变的3个版本以及其中发生的一起“血案”
    1select sub_table.num,sub_table.job_idfrom (select count(*) as num,t.job_idfrom dir_irai t group by t.job_id order by num desc)sub_table where sub_table.num>12  select distinct sub_table.num,t2.job_id,t2.anken_id,t2.job_idfrom (select count(*) as num,t.job_idfrom dir_irai t group by t.job_id order by num desc)sub_table,dir_irai t2 ...
    最开始使用SQLServer,我喜欢这么用SQL:select * from table1 where id in (select table1_id from table2 where table2_filed = xxxx) and table1_field = yyy; 这里的一个查询其实会分为两个查询,对table1和对table2的子查询,这样写能让每个查询都尽量使用索引。 曾几何时,使用mysql的时候用explain分析查询,发现mysql里面的子查询很慢,而mysql文档里很多时候也推荐使用join,于是我认定了mysql的子查询实现的很烂,...
[ 共3篇文章 ][ 第1页/共1页 ][ 1 ]
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1