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

上一篇:pt-ioprofile分析查看mysql的真实IO情况


下一篇:python派QQ邮件