现有一表格表1bid_project_all,一部分是公司名、项目数、项目金额,然后连接另一表表2industry_class;根据表2匹配每个公司的行业。
匹配完毕之后,又要根据各单位所属行业标签进行对项目数、项目金额的排序;排序不是用orderby进行升序降序操作;而是插入新的一列,根据多寡生成从1-n的排列方式。
在增列排序时,尝试了几种方法,但形成数据冗余。故发此帖子,望路过大神伸援手!谢谢、
附:
本人所写语句:
SELECT*FROM
(SELECTt1.公司名称,t1.中标金额,t1.项目数,t1.Industry_labelFROM
(SELECT
bid_companyas公司名称,
sum(bid_money)as中标金额,
count(bid_project_all.id)as项目数,
industry_class.project_id,
industry_class.Industry_label
FROM
bid_project_all
LEFTJOINindustry_classonbid_project_all.project_id=industry_class.project_id
WHERE
--bid_project_all.bid_money>1000000000
--andlength(bid_project_all.bid_money)>12
--AND
bid_project_all.bid_companyISNOTNULL
GROUPBYbid_project_all.bid_company
)t1
GROUPBYt1.`公司名称`
ORDERBY
t1.`项目数`DESC)t2
GROUPBYt2.Industry_label
分 -->
|