IF(expr,v1,v2)
- 如果表达式 expr 成立,返回结果 v1;否则,返回结果 v2。这里需要注意v1和vi不能是select字句
select t.*,IF(t.task_status=2,NOW()-t.task_running_time,log.elapsed_seconds) elapsedSeconds from t_deploy_task t left join t_deploy_task_runing_log log on t.task_running_time=log.task_run_time and t.task_identity=log.task_identity;
上面这句sql,有个elapsedSeconds耗时的字段,分为不同的情况取
IFNULL(v1,v2)
- 如果 v1 的值不为 NULL,则返回 v1,否则返回 v2。
select t.*,IFNULL(IF(t.task_status=2,NOW()-t.task_running_time,log.elapsed_seconds),0) elapsedSeconds from t_deploy_task t left join t_deploy_task_runing_log log on t.task_running_time=log.task_run_time and t.task_identity=log.task_identity;
4047

被折叠的 条评论
为什么被折叠?



