记录在项目中使用的MySql相关用法.


SUM()函数按条件求和

  • 一般求和 (加和所有lessonStep)

    > sum(lessonStep) 
  • 条件求和 (当 lessonStep为1时, 加1 否则为0)

    > sum( lessonStep = 1 ), 0 )
  • 复杂条件求和 (只统计LessonStep为1, 否则为0)

    > sum(if(lessonStep = 1, lessonStep, 0))
    

COUNT()函数按条件求和

一般求和 (加和所有lessonStep)

count(lessonStep)

条件求和 (当 lessonStep为1时, 加1 否则为0)

count(lessonStep=1 or null)

复杂条件求和 (只统计LessonStep为1, 否则为0)

count(if(lessonStep=1,true,null))

TIMESTAMPDIFF()函数

求两个时间之前间隔 (单位为秒 SECOND)

TIMESTAMPDIFF(SECOND, learing.createDate , learing.modifiedDate) as learnTime,

TO_DAYS函数

用于时间比对

to_days(createDate) = to_days('2019-08-01')

IFNULL

设置默认值

IFNULL( sum( google_minicourserelation.STATUS != 2 AND to_days( google_minicourserelation.createDate) <= to_days(#{param1})), 0 ) AS countMP,

标签: none

已有 3 条评论

  1. 选材新颖独特,通过细节描写赋予主题鲜活生命力。

  2. 立意高远,以小见大,引发读者对社会/人性的深层共鸣。

  3. 建议融入东方智慧,形成对话张力。

添加新评论