MySql 在大数量的统计中具体的使用技巧

一、CASE WHEN THEN ELSE END 使用用法。

  在用sql语句统计某字段的某种状态的出现的次数,可以考虑用到 CASE WHEN THEN ELSE END 使用用法。当数据量过于庞大,不建议使用。

范例:

 SUM( CASE WHEN state=0 THEN 1 ELSE 0 END )as deade 

 

二、 to_char

  将时间戳转为日期格式 , 具体使用情景是可以通过 GROUP BY 聚合

范例:

 to_char(to_timestamp(add_time), 'YYYY-MM-DD') 

 

三、LEFT JOIN , RIGHT JOIN

  涉及到表间操作,可以使用.

范例:

 FROM a LEFT OUTER JOIN b ON a.id=b.mid 

 

四、sql 统计除法问题

  偶尔要统计比率之类的问题,需要用到除法规则 ,NUMERIC 数值类型

 ROUND(live::NUMERIC/total::NUMERIC,4) as percentage 

 

posted @ 2014-10-08 11:08  jun_wang  阅读(240)  评论(0编辑  收藏  举报