值得纪念的mysql 语句 查询某人本月的总业绩 在全公司的名次
现有业绩表如下: yib_id主键id yib_yyry_id员工id yib_yji业绩 yjb_createtime创建时间 求当月内某员工总业绩在所有员工中的名次!求mysql的语句写法 sql 语句: select t.*,@rownum:=@rownum1 AS rownum from (SELECT yjb_yyry_id,yyryusername ,sum(yjb_y
现有业绩表 如下:yib_id 主键id
yib_yyry_id 员工id
yib_yji 业绩
yjb_createtime 创建时间
求当月内某员工总业绩在所有员工中的名次 !求mysql 的语句 写法
sql 语句:
select t.*,@rownum:=@rownum+1 AS rownum from (SELECT yjb_yyry_id,yyryusername ,sum(yjb_yji) as total
FROM yjb where month(createtime) =month(now()) and year(createtime)=year(now())
group by yjb_yyry_id order by total desc) t,(SELECT @rownum:=0) r
执行结果:
yjb_yyry_id total rownum
1001 900 1
1002 800 2
1003 700 3
.....
现贴出完整代码:
Dao:
/**
* 业绩表
* @param yyryid 运营人员id
* @return
业绩
*/
public List
DaoImpl:
/**
* 获得业绩记录
*/
@SuppressWarnings("unchecked")
public List
js:
//业绩展示
function yejis(){
alert(1);
$.post("yyryActions!getMoney.action",null,function(data){
$chapin = $("#aax"); //冠军业绩div
$myjis = $("#myyeji");//登录者业绩div
$mingci =$("#mingci");//登录者名次li
var $ss = $("#yyryids").val();//登录者id ,页面隐藏域获得
var $yeji ;
//登录者业绩
var $mingci ;
//登录者名次
var $maxyeji=data[0][0]; //冠军业绩
var $maxname=data[0][1];//冠军名字
$.each(data,function(i,moneyss){
$.each(moneyss,function(i,a){
if(a==$ss){
//循环判断执行结果,如果有个值得id 和用户id 相同,那就是当前登录者的信息
$yeji=moneyss[0];
$mingci = moneyss[3];
}
})
if($yeji==undefined){
$chapin.html("当月冠军 "+$maxname+""+$maxyeji+"元");
}
else{
$chapin.html("当月冠军 "+$maxname+""+$maxyeji+"元");
$myjis.html("我的业绩"+$yeji+"");
$mingci.html("
"+$mingci+"名
我的公司排名
");}
});
});
}
下一篇: 轻松理解数据库三范式