" select max(su.rwjhjssj) rwjhjssj,su.sid from ( select sub.sid sid,sub.mid mid , sub.rwjhjssj rwjhjssj from prp_jdgl_jdglwbslcbjh " + " jh right join prp_jdgl_jdglwbslcbjh_sub sub on sub.mid=jh.sid where jh.tid in ( select sid from prp_htgl_zcbhtxx where orgid in (" + orgids + ")" + " ) and sub.rwjhjssj < '" + nowdate + "'" + " GROUP BY sub.mid,rwjhjssj desc ) su group by su.mid ";
这里有两个思路:
1、先按照要求分组并按照时间从大到小排序;这里数据不会实现真正分组而是按照分组的数据放在一起并实现时间的降序排序;例如:GROUP BY sub.mid,rwjhjssj desc
2、最后在进行分组在利用聚合函数取出时间最大的或者满足要求的数据;例如:group by su.mid
下面是我本人的微信公众号,有兴趣的朋友可以关注下,经常交流和学习!