改变思考问题的方式——SQL排序查询

只查询一张表,一条数据
查询规模指标表,条件:没有被删除的,然后按是否生效(0生效,只有一个生效的,如果都没有生效),那就按审批状态(如果有多个通过审批)最后按更新时间排序,取最新的那个

其实这个可以仅仅将3个字段排序然后就ok了

SELECT
iseffective , approvestatus ,update_date
FROM
	PT_SYS_BASE_PLANNINGINDEX
WHERE 
IFNULL(delflag,0) = 0
ORDER BY
   IFNULL(iseffective,-1) DESC, approvestatus DESC ,	update_date DESC
LIMIT 1

 个人实际业务所遇,如有疑问,评论提出,谢谢!

posted on 2017-09-25 16:25  揽星  阅读(264)  评论(0编辑  收藏  举报

导航