这是我的示例查询,用于计算销售员的销售数量,并将模型名称作为输出列。我的问题是salesman和modelname都是动态的。
欢迎任何建议。
---------例如查询--------------------------
select @rownum:=@rownum+1 AS bil, a.sales_dt,a.salesman, b.model_name,c.full_name
from t_sales a left join t_carinfo b on a.chasis_no=b.chasis_no,t_user c,(SELECT @rownum:=0) r
where a.agent_code='03' and a.sname is not null and a.sname='01' and a.salesman=c.regno and YEAR(a.sales_dt)='1995'
group by a.salesman, b.model_name
-----输出----
bil sales_dt salesman model_name full_name
1 1995-05-29 15 E200 ANUAR
2 1995-06-30 16 HARRIER AZHAR
3 1995-09-14 15 HARRIER ANUAR
4 1995-11-15 17 E200 KAMAL
bil full_name推销员HARRIER E200
1 ANUAR 15 1 1
2 AZHAR 16 1 0
3 KAMAL 17 0 1
感谢。
答案 0 :(得分:0)
如果要将此类行值转换为动态列,则必须使用PIVOT
。请查看此说明:http://en.wikibooks.org/wiki/MySQL/Pivot_table 1
尝试一下,如果您仍未获得所需的结果,请随时再次发布。