SELECT * FROM `订单`;
# 日期处理
-- ALTER TABLE 订单 DROP 订单日期r
-- CREATE TABLE A
-- SELECT * FROM 订单
-- UPDATE A set 订单日期r= 订单日期+(SELECT CURDATE()-订单日期 FROM 订单
-- WHERE id=10000)
--
--
-- SELECT *,订单日期+(SELECT CURDATE()-订单日期 FROM 订单
-- WHERE id=10000) FROM 订单
-- SELECT DATEDIFF(NOW(),`订单日期`) as r ,null as f ,null as m FROM 订单
--
--
-- SELECT CURDATE()-'2014/10/9'
--
-- SELECT '2014/10/9'+20189204
-- SELECT 20189204/365/24
--
-- SELECT DATEDIFF(CURDATE(),'2014/10/9')*24*60
--
CREATE TABLE rfm as SELECT * FROM
(SELECT `客户名称`,min(DATEDIFF(CURDATE(),订单日期)) as r,COUNT(客户名称) f ,sum(`销售额`) m
FROM 订单 GROUP BY `客户名称`) as p;
SELECT * FROM rfm;
CREATE TABLE 画像表 as SELECT * FROM
(SELECT 客户名称,CONCAT(
if(r>(SELECT AVG(r) FROM rfm),'远','近'),
if(f>(SELECT AVG(f) FROM rfm),'高','低'),
if(m>(SELECT AVG(m) FROM rfm),'高','低') ) as 画像
FROM rfm GROUP BY 画像,客户名称) as p;
SELECT *,
CASE WHEN 画像='近高高' THEN '高级用户'
WHEN 画像='近高低' THEN '中级用户'
WHEN 画像='近低高' THEN '爆发用户'
WHEN 画像='近低低' THEN '初级用户'
WHEN 画像='远高高' THEN '沉睡用户'
WHEN 画像='远高低' THEN '丢失用户'
WHEN 画像='远低高' THEN '丢失用户'
WHEN 画像='远低低' THEN '丢失用户'
end 画像名称 FROM 画像表
rmf 画像描述
猜你喜欢
转载自blog.csdn.net/Captain_DUDU/article/details/103604037
今日推荐
周排行