//1.根据某字段分组并递增排序
select rank, result.*
from (
select B.*,
@rownum:=@rownum+1 ,
if(@pdept=B.XXXXXX, @rank:=@rank+1,@rank:=1) as rank,
@pdept:=B.XXXXXX
from B , (select @rownum :=0 , @pdept := null ,@rank:=0) a
) result
//2.统计AAA表中 总数 和某一状态的 个数
select
COUNT(a.XXX)
,COUNT(b.XXX)
from AAA a
LEFT JOIN (select PRJ_ID FROM AAA WHERE 某个状态 = '1' ) b
ON a.XX = b.XX #自己关联自己
GROUP BY a.XXX