需要根据下面两个表,算出前、后期业绩的提成及提成合计,请问要怎么写呢?感觉挺复杂的,写晕了。

解决方案 »

  1.   

    --下面生成工资表
    select a.姓名,a.职位,a.前期业绩*b.前期提成比例 as  前期提成,
    a.后期业绩*b.后期提成比例 as  后期提成,
    a.前期业绩*b.前期提成比例+a.后期业绩*b.后期提成比例 as 提成合计  
    from 员工业务情况表 a,员工提成方式表 b
    where a.职位=b.职位
      

  2.   

    Select A.姓名,A.职位,前期提成=A.前期业绩*B.前期提成 ,后期提成=A.后期业绩*B.后期提成比例,
    提成合计=A.前期业绩*B.前期提成+A.后期业绩*B.后期提成比例
    From  员工业务情况表 A
    Join  员工提成方式 B On A.职位=B.职位  
      

  3.   


    declare @员工业务情况表 table 
    (姓名 varchar(4),职位 varchar(8),前期业绩 int,后期业绩 int)
    insert into @员工业务情况表
    select '张三','业务员',50000,4500 union all
    select '李四','出纳',3800,1500 union all
    select '王五','业务经理',150000,80000declare @员工提成方式表 table 
    (职位 varchar(8),前期提成比例 numeric(18,4),后期提成比例 numeric(18,4))
    insert into @员工提成方式表
    select '业务员',1.2,1.3 union all
    select '出纳',1.5,1.6 union all
    select '业务经理',1.3,1.5select 
    a.姓名,a.职位,
    前期业绩*前期提成比例/100 as 前期提成,
    后期业绩*后期提成比例/100 as 后期提成,
    前期业绩*前期提成比例/100+后期业绩*后期提成比例/100 as 提成合计
    from @员工业务情况表 a 
    left join @员工提成方式表 b on a.职位=b.职位
    /*
    姓名   职位       前期提成                   后期提成                  提成合计
    ---- -------- ---------------------- --------------------- ---------------------------
    张三   业务员      600.00000000           58.50000000           658.50000000
    李四   出纳       57.00000000            24.00000000           81.00000000
    王五   业务经理     1950.00000000          1200.00000000         3150.00000000
    */