27,579
社区成员
发帖
与我相关
我的任务
分享
SELECT 客户名称, 客户基本信息.客户ID, 产品占有率.产品占有率评分, 服务记录明细表.服务评分, 订单明细.销售评分, 订单明细.订货频率评分, (((CASE WHEN 客户基本信息.注册资金 >= 800 THEN '5' WHEN 客户基本信息.注册资金 < 800 AND 客户基本信息.注册资金 >= 600 THEN '4' WHEN 客户基本信息.注册资金 < 600 AND 客户基本信息.注册资金 >= 400 THEN '3' WHEN 客户基本信息.注册资金 < 400 AND 客户基本信息.注册资金 >= 200 THEN '2' ELSE 1 END ) * 0.6 + (CASE WHEN 客户基本信息.是否通过ISO认证 = '是' THEN 4 ELSE 2 END ) * 0.4 ) * 0.3 + (CASE WHEN 客户基本信息.业内评价 = '优秀' THEN 5 WHEN 客户基本信息.业内评价 = '良好' THEN 4 WHEN 客户基本信息.业内评价 = '一般' THEN 2 ELSE 1 END ) * 0.45 + ((CASE WHEN 客户基本信息.资产负债率 <= '10%' THEN 5 WHEN 客户基本信息.资产负债率 > '10%' AND 客户基本信息.资产负债率 <= '15%' THEN 4 WHEN 客户基本信息.资产负债率 > '15%' AND 客户基本信息.资产负债率 <= '20%' THEN 3 WHEN 客户基本信息.资产负债率 > '20%' AND 客户基本信息.资产负债率 <= '25%' THEN 2 ELSE 1 END ) + 0.65 + (CASE WHEN 客户基本信息.销售盈利率 >= '30%' THEN 5 WHEN 客户基本信息.销售盈利率 < '30%' AND 客户基本信息.销售盈利率 >= '25%' THEN 4 WHEN 客户基本信息.销售盈利率 < '25%' AND 客户基本信息.销售盈利率 >= '20%' THEN 3 WHEN 客户基本信息.销售盈利率 < '20%' AND 客户基本信息.销售盈利率 >= '15%' THEN 2 ELSE 1 END ) * 0.35 ) * 0.25 ) + 销售评分 * 0.4 + 服务评分 * 0.25 + (订货频率评分 * 0.6 + 产品占有率评分 * 0.4) * 0.2 AS 总评分, 注册资金评分 = (CASE WHEN 客户基本信息.注册资金 >= 800 THEN '5' WHEN 客户基本信息.注册资金 < 800 AND 客户基本信息.注册资金 >= 600 THEN '4' WHEN 客户基本信息.注册资金 < 600 AND 客户基本信息.注册资金 >= 400 THEN '3' WHEN 客户基本信息.注册资金 < 400 AND 客户基本信息.注册资金 >= 200 THEN '2' ELSE 1 END ), 是否通过ISO认证评分 = (CASE WHEN 客户基本信息.是否通过ISO认证 = '是' THEN 4 ELSE 2 END ), 业内评价评分 = (CASE WHEN 客户基本信息.业内评价 = '优秀' THEN 5 WHEN 客户基本信息.业内评价 = '良好' THEN 4 WHEN 客户基本信息.业内评价 = '一般' THEN 2 ELSE 1 END ), 资产负债率评分 = (CASE WHEN 客户基本信息.资产负债率 <= '10%' THEN 5 WHEN 客户基本信息.资产负债率 > '10%' AND 客户基本信息.资产负债率 <= '15%' THEN 4 WHEN 客户基本信息.资产负债率 > '15%' AND 客户基本信息.资产负债率 <= '20%' THEN 3 WHEN 客户基本信息.资产负债率 > '20%' AND 客户基本信息.资产负债率 <= '25%' THEN 2 ELSE 1 END ), 销售盈利率评分 = (CASE WHEN 客户基本信息.销售盈利率 >= '30%' THEN 5 WHEN 客户基本信息.销售盈利率 < '30%' AND 客户基本信息.销售盈利率 >= '25%' THEN 4 WHEN 客户基本信息.销售盈利率 < '25%' AND 客户基本信息.销售盈利率 >= '20%' THEN 3 WHEN 客户基本信息.销售盈利率 < '20%' AND 客户基本信息.销售盈利率 >= '15%' THEN 2 ELSE 1 END ) FROM 客户基本信息 JOIN ( SELECT 客户ID, '产品占有率评分' = CASE WHEN 产品占有率.产品占有率 >= '80%' THEN 5 WHEN 产品占有率.产品占有率 < '80%' AND 产品占有率.产品占有率 >= '60%' THEN 4 WHEN 产品占有率.产品占有率 < '60%' AND 产品占有率.产品占有率 >= '40%' THEN 3 WHEN 产品占有率.产品占有率 < '40%' AND 产品占有率.产品占有率 >= '20%' THEN 2 ELSE 1 END FROM 产品占有率 ) 产品占有率 ON 客户基本信息.客户ID = 产品占有率.客户ID JOIN ( SELECT 客户ID, SUM(服务记录明细表.服务费用) AS 总费用, SUM(服务记录明细表.服务费用) * 100 / ( SELECT SUM(服务记录明细表.服务费用) FROM 服务记录明细表 ) AS 服务占比, 服务评分 = CASE WHEN SUM(服务记录明细表.服务费用) * 100 / ( SELECT SUM(服务记录明细表.服务费用) FROM 服务记录明细表 ) >= '30' THEN 1 WHEN SUM(服务记录明细表.服务费用) * 100 / ( SELECT SUM(服务记录明细表.服务费用) FROM 服务记录明细表 ) < '30' AND SUM(服务记录明细表.服务费用) * 100 / ( SELECT SUM(服务记录明细表.服务费用) FROM 服务记录明细表 ) >= '15' THEN 2 WHEN SUM(服务记录明细表.服务费用) * 100 / ( SELECT SUM(服务记录明细表.服务费用) FROM 服务记录明细表 ) < '15' AND SUM(服务记录明细表.服务费用) * 100 / ( SELECT SUM(服务记录明细表.服务费用) FROM 服务记录明细表 ) >= '8' THEN 3 WHEN SUM(服务记录明细表.服务费用) * 100 / ( SELECT SUM(服务记录明细表.服务费用) FROM 服务记录明细表 ) < '8' AND SUM(服务记录明细表.服务费用) * 100 / ( SELECT SUM(服务记录明细表.服务费用) FROM 服务记录明细表 ) >= '4' THEN 4 ELSE 5 END FROM 服务记录明细表 GROUP BY 服务记录明细表.客户ID ) 服务记录明细表 ON 客户基本信息.客户ID = 服务记录明细表.客户ID JOIN ( SELECT 订单明细.客户ID, SUM(订单明细.利润) AS 总利润, SUM(订单明细.利润) * 100 / ( SELECT SUM(订单明细.利润) FROM 订单明细 ) AS 订单占比, 销售评分 = (CASE WHEN SUM(订单明细.利润) * 100 / ( SELECT SUM(订单明细.利润) FROM 订单明细 ) >= '25' THEN 5 WHEN SUM(订单明细.利润) * 100 / ( SELECT SUM(订单明细.利润) FROM 订单明细 ) < '25' AND SUM(订单明细.利润) * 100 / ( SELECT SUM(订单明细.利润) FROM 订单明细 ) >= '15' THEN 4 WHEN SUM(订单明细.利润) * 100 / ( SELECT SUM(订单明细.利润) FROM 订单明细 ) < '15' AND SUM(订单明细.利润) * 100 / ( SELECT SUM(订单明细.利润) FROM 订单明细 ) >= '8' THEN 3 WHEN SUM(订单明细.利润) * 100 / ( SELECT SUM(订单明细.利润) FROM 订单明细 ) < '8' AND SUM(订单明细.利润) * 100 / ( SELECT SUM(订单明细.利润) FROM 订单明细 ) >= '4' THEN 2 ELSE 1 END ), 订货频率评分 = (CASE WHEN COUNT(订单明细.客户ID) / (DATEDIFF(MM, MIN(订单明细.订货时间), MAX(订单明细.订货时间)) + 1) >= 4 THEN 5 WHEN COUNT(订单明细.客户ID) / (DATEDIFF(MM, MIN(订单明细.订货时间), MAX(订单明细.订货时间)) + 1) < 4 AND COUNT(订单明细.客户ID) / (DATEDIFF(MM, MIN(订单明细.订货时间), MAX(订单明细.订货时间)) + 1) >= 3 THEN 4 WHEN COUNT(订单明细.客户ID) / (DATEDIFF(MM, MIN(订单明细.订货时间), MAX(订单明细.订货时间)) + 1) < 3 AND COUNT(订单明细.客户ID) / (DATEDIFF(MM, MIN(订单明细.订货时间), MAX(订单明细.订货时间)) + 1) >= 2 THEN 3 WHEN COUNT(订单明细.客户ID) / (DATEDIFF(MM, MIN(订单明细.订货时间), MAX(订单明细.订货时间)) + 1) < 2 AND COUNT(订单明细.客户ID) / (DATEDIFF(MM, MIN(订单明细.订货时间), MAX(订单明细.订货时间)) + 1) >= 1 THEN 2 ELSE 1 END ) FROM 订单明细 GROUP BY 订单明细.客户ID ) 订单明细 ON 客户基本信息.客户ID = 订单明细.客户ID;