杭州11月1-29号在线产品在线天数、销售天数

1、产品在这个时间段内的每一天的在线情况,然后聚合计算每个产品的在线天数,每一天的在线情况 如果在线记为1,不在线为null

2、计算每个产品在这个时间段内每天订单情况 再聚合计算每个产品的销售天数 每一天的订单额

3、将步骤1作为主表 步骤2作为从表 left join 条件为产品ID相等时候

SELECT a.城市,a.商品分类一级,a.商品分类二级,a.商品分类三级,a.产品ID,a.产品名称,a.在线天数,b.销售天数,b.订单额,
a.1日,a.2日,a.3日,a.4日,a.5日,a.6日,a.7日,a.8日,a.9日,a.10日,a.11日,a.12日,a.13日,a.14日,a.15日,a.16日,a.17日,a.18日,a.19日,a.20日,a.21日,a.22日,a.23日,a.24日,a.25日,a.26日,a.27日,a.28日,b.1日,b.2日,b.3日,b.4日,b.5日,b.6日,b.7日,b.8日,b.9日,b.10日,b.11日,b.12日,b.13日,b.14日,b.15日,b.16日,b.17日,b.18日,b.19日,b.20日,b.21日,b.22日,b.23日,b.24日,b.25日,b.26日,b.27日,b.28日
FROM (
SELECT 城市,a2.商品分类一级,a2.商品分类二级,a2.商品分类三级,a1.产品ID,a2.产品名称,COUNT(在线日期) AS 在线天数
,SUM(IF(在线日期='2016-11-01',1,NULL)) AS 1日,SUM(IF(在线日期='2016-11-02',1,NULL)) AS 2日,SUM(IF(在线日期='2016-11-03',1,NULL)) AS 3日,SUM(IF(在线日期='2016-11-04',1,NULL)) AS 4日
,SUM(IF(在线日期='2016-11-05',1,NULL)) AS 5日,SUM(IF(在线日期='2016-11-06',1,NULL)) AS 6日,SUM(IF(在线日期='2016-11-07',1,NULL)) AS 7日,SUM(IF(在线日期='2016-11-08',1,NULL)) AS 8日
,SUM(IF(在线日期='2016-11-09',1,NULL)) AS 9日,SUM(IF(在线日期='2016-11-10',1,NULL)) AS 10日,SUM(IF(在线日期='2016-11-11',1,NULL)) AS 11日,SUM(IF(在线日期='2016-11-12',1,NULL)) AS 12日
,SUM(IF(在线日期='2016-11-13',1,NULL)) AS 13日,SUM(IF(在线日期='2016-11-14',1,NULL)) AS 14日,SUM(IF(在线日期='2016-11-15',1,NULL)) AS 15日,SUM(IF(在线日期='2016-11-16',1,NULL)) AS 16日
,SUM(IF(在线日期='2016-11-17',1,NULL)) AS 17日,SUM(IF(在线日期='2016-11-18',1,NULL)) AS 18日,SUM(IF(在线日期='2016-11-19',1,NULL)) AS 19日,SUM(IF(在线日期='2016-11-20',1,NULL)) AS 20日
,SUM(IF(在线日期='2016-11-21',1,NULL)) AS 21日,SUM(IF(在线日期='2016-11-22',1,NULL)) AS 22日,SUM(IF(在线日期='2016-11-23',1,NULL)) AS 23日,SUM(IF(在线日期='2016-11-24',1,NULL)) AS 24日
,SUM(IF(在线日期='2016-11-25',1,NULL)) AS 25日,SUM(IF(在线日期='2016-11-26',1,NULL)) AS 26日,SUM(IF(在线日期='2016-11-27',1,NULL)) AS 27日,SUM(IF(在线日期='2016-11-28',1,NULL)) AS 28日
FROM (
SELECT 城市,产品ID,DATE(在线日期) AS 在线日期
FROM `a010_dynamic_产品` WHERE 城市='杭州' AND 在线日期>='2016-11-01' AND 在线日期<CURRENT_DATE
GROUP BY 产品ID,DATE(在线日期)
) AS a1
LEFT JOIN `a002_产品` AS a2 ON a1.产品ID=a2.产品ID
GROUP BY a1.产品ID
) AS a
LEFT JOIN (
SELECT 城市,产品ID,COUNT(订单日期) AS 销售天数,SUM(金额) AS 订单额
,SUM(IF(订单日期='2016-11-01',金额,NULL)) AS 1日,SUM(IF(订单日期='2016-11-02',金额,NULL)) AS 2日,SUM(IF(订单日期='2016-11-03',金额,NULL)) AS 3日,SUM(IF(订单日期='2016-11-04',金额,NULL)) AS 4日
,SUM(IF(订单日期='2016-11-05',金额,NULL)) AS 5日,SUM(IF(订单日期='2016-11-06',金额,NULL)) AS 6日,SUM(IF(订单日期='2016-11-07',金额,NULL)) AS 7日,SUM(IF(订单日期='2016-11-08',金额,NULL)) AS 8日
,SUM(IF(订单日期='2016-11-09',金额,NULL)) AS 9日,SUM(IF(订单日期='2016-11-10',金额,NULL)) AS 10日,SUM(IF(订单日期='2016-11-11',金额,NULL)) AS 11日,SUM(IF(订单日期='2016-11-12',金额,NULL)) AS 12日
,SUM(IF(订单日期='2016-11-13',金额,NULL)) AS 13日,SUM(IF(订单日期='2016-11-14',金额,NULL)) AS 14日,SUM(IF(订单日期='2016-11-15',金额,NULL)) AS 15日,SUM(IF(订单日期='2016-11-16',金额,NULL)) AS 16日
,SUM(IF(订单日期='2016-11-17',金额,NULL)) AS 17日,SUM(IF(订单日期='2016-11-18',金额,NULL)) AS 18日,SUM(IF(订单日期='2016-11-19',金额,NULL)) AS 19日,SUM(IF(订单日期='2016-11-20',金额,NULL)) AS 20日
,SUM(IF(订单日期='2016-11-21',金额,NULL)) AS 21日,SUM(IF(订单日期='2016-11-22',金额,NULL)) AS 22日,SUM(IF(订单日期='2016-11-23',金额,NULL)) AS 23日,SUM(IF(订单日期='2016-11-24',金额,NULL)) AS 24日
,SUM(IF(订单日期='2016-11-25',金额,NULL)) AS 25日,SUM(IF(订单日期='2016-11-26',金额,NULL)) AS 26日,SUM(IF(订单日期='2016-11-27',金额,NULL)) AS 27日,SUM(IF(订单日期='2016-11-28',金额,NULL)) AS 28日
FROM (#明细 每天每个产品订单额
SELECT 城市,DATE(订单日期) AS 订单日期,产品ID,产品名称,SUM(金额) AS 金额
FROM `a003_order`
WHERE 城市='杭州' AND 金额>0 AND 订单日期>='2016-11-01' AND 订单日期<CURRENT_DATE
GROUP BY 产品ID,DATE(订单日期)
) AS b1
GROUP BY 产品ID
) AS b ON a.产品ID=b.产品ID
ORDER BY a.商品分类一级,a.商品分类二级,a.商品分类三级,a.在线天数 DESC,b.销售天数 DESC,b.订单额 DESC

最新文章

  1. HTML input小结
  2. 转载:稀疏矩阵存储格式总结+存储效率对比:COO,CSR,DIA,ELL,HYB
  3. Android Studio 修改字体
  4. python IDLE编程时遇到Python Error: Inconsistent indentation detected! 解决方法
  5. 在iis中设置文件下载而不是在浏览器上打开
  6. ld: warning: directory not found for option 去掉警告的方法
  7. 安装 openSUSE Leap 42.1 之后要做的 8 件事
  8. XCode属性面板使用说明
  9. SOA_Oracle SOA Suite and BPM Suite 11g官方虚拟机安装指南(案例)
  10. js跨域总结
  11. vs 或 Sql server2012连接Sql server时出现的问题:已成功与服务器建立连接,但在登陆过程中发生错误
  12. vue中Prop父子传值方法
  13. 大数据实操3 - hadoop集群添加新节点
  14. 通过ssh StrictHostKeyChecking解决自动化git项目问题
  15. vuex使用一
  16. Kafka高可用实现原理
  17. mysql之commit,transaction事物控制
  18. cxgrid动态生成footersummary 并获得值
  19. springboot集成mybatis及mybatis generator工具使用
  20. python学习之参数传递

热门文章

  1. hdu5386(暴力)
  2. java获取网页源码
  3. SpringBoot开启https以及http重定向
  4. hashmap和ConcurrentHashMap
  5. mysql 查排名
  6. Win7获取管理权限修改Host文件以其他权限问题
  7. beego的MVC架构介绍
  8. 浅谈WPF本质中的数据和行为
  9. android 导入项目 项目中文字乱码问题
  10. Windows下Nginx+Web.py+FastCGI服务搭建