MySQL 讨厌哪种类型的查询

     ㈠ 任何查询都讨厌
     
        只要是查询、MySQL都讨厌、执行查询最快的方式就是不去执行
        缓存为王、比如Redis或者memcache
     
     
     ㈡ 查询结果集最小
     
        尽量基于主键或者二级索引来查询、通过覆盖索引避免回表来节省IO
        如:
        select col1 from table where primary_key_column=something;
        
     
     ㈢ 带JOINS 的查询
        
        采用适当的反范式来避免JOIN
        如:
        SELECT t2.value FROM t2 JOIN t1 ON (t1.id=t2.tid) WHERE t1.orderdate=NOW()
        可以把t1中的orderdate列抽取放置到t2中
        SELECT t2.value FROM t2 WHERE t2.orderdate=NOW()  
        
        
     ㈣ 聚合查询最讨厌
        
        周期性的预装载汇总表来避免实时的在线聚合查询

        这里使用 INSERT ... ON DUPLICATE KEY UPDATE很有帮助

 

 

By WaterBin

2013-07-20

Good Luck

 

posted @ 2013-07-20 18:24  jlins  阅读(177)  评论(0编辑  收藏  举报