一、11.16到21号活动规则是 单笔订单最高的金额划分客户为399,799,1599元三档 达标的分别赠送对应的优惠券 优惠券ID有标号区间

SELECT a.*,CASE WHEN 金额<399 THEN "无优惠券" WHEN 金额>=399 AND 金额<799 THEN "399档" WHEN 金额>=799 AND 金额<1599 THEN "799档" WHEN 金额>=1599 THEN "1599档" ELSE NULL END AS 档位,b.联系电话
FROM (
SELECT 城市,用户ID,用户名称,DATE(订单日期) AS 订单日期,订单ID AS 单笔最高订单ID,销售员,SUM(金额) AS 金额
FROM a003_order
WHERE 城市='杭州' AND 订单日期>="2016-11-16" AND 订单日期<"2016-11-22" AND 金额>0 #and 用户ID=57012
GROUP BY 订单ID
ORDER BY 用户ID,SUM(金额) DESC
) AS a
LEFT JOIN a001_resterant AS b ON a.用户ID=b.用户ID
GROUP BY a.用户ID
ORDER BY 金额 DESC

二、由于达标客户会分多张优惠券 因此我们将发放优惠券表和使用优惠券表连接起来 以发放表为主表 后面表为从表

这样可以查看给每个用户每张优惠券在未来一段时间内的使用情况

SELECT a.*,b.使用日期,b.订单号,b.下单金额,CASE WHEN b.订单号 IS NULL THEN "未使用" ELSE "使用" END AS 优惠券使用状态
FROM (#发放的用户明细 一个用户分配多个优惠券ID
SELECT 城市,DATE(发放日期) AS 发放日期,用户ID,用户名称,优惠券ID,优惠券名称
,RIGHT(LEFT(优惠券名称,INSTR(优惠券名称,"档")-0),CHAR_LENGTH(LEFT(优惠券名称,INSTR(优惠券名称,"档")-0))-CHAR_LENGTH(LEFT(优惠券名称,INSTR(优惠券名称,"【")))) AS 档位,金额 AS 优惠券金额
FROM a015_customer_coupon
WHERE 城市='杭州' AND 发放日期>="2016-11-23" AND 优惠券ID>=1165 AND 优惠券ID<=1178 AND 状态<>'已失效'
) AS a
LEFT JOIN (#每个优惠券ID使用情况
SELECT 城市,DATE(使用时间) AS 使用日期,用户ID,用户名称,订单号,下单金额,优惠券ID,优惠券名称,RIGHT(LEFT(优惠券名称,INSTR(优惠券名称,"档")-0),CHAR_LENGTH(LEFT(优惠券名称,INSTR(优惠券名称,"档")-0))-CHAR_LENGTH(LEFT(优惠券名称,INSTR(优惠券名称,"【")))) AS 档位,优惠券类别,优惠券金额
FROM a016_order_customercoupon_xref
WHERE 城市='杭州' AND 使用时间<CURRENT_DATE AND 使用时间>="2016-11-23" AND 使用时间<"2016-12-16" AND 优惠券ID>=1165 AND 优惠券ID<=1178
) AS b ON a.用户ID=b.用户ID AND a.优惠券ID=b.优惠券ID
WHERE a.用户ID IN (
SELECT 用户ID
FROM a015_customer_coupon
WHERE 城市='杭州' AND 发放日期>="2016-11-23" AND 优惠券ID>=1165 AND 优惠券ID<=1178 AND 状态<>'已失效'
)
ORDER BY 优惠券使用状态,b.使用日期

三、使用率:用excel countifs 计算

MySQL11月16-11月21日活动赠送的优惠券使用率_20161124的更多相关文章

  1. 2014年11月17~11月18日,杨学明老师《企业IT需求收集和实施》内训在湖南长沙某酒店成功举办!

    2014年11月17至18日,受湖南某软件企业的邀请,杨学明老师<企业IT需求收集和实施>内训在某长沙某五星级酒店成功举办!来自全国各地的IT高管和企业负责人参加了此次培训.杨学明老师分别 ...

  2. java编程基础篇-------> 从键盘输入一位整数,代表月份,编程判断指定月份属于一年中的哪个季度。如果是 12 月、1 月、2 月,就属于冬季。

    从键盘输入一位整数,代表月份,编程判断指定月份属于一年中的哪个季度.如果是 12月.1 月.2 月,就属于冬季:如果是 3 月.4 月.5 月,就属于春季:如果是 6 月.7 月.8 月,就属于夏季: ...

  3. 2016年12月16日 星期五 --出埃及记 Exodus 21:11

    2016年12月16日 星期五 --出埃及记 Exodus 21:11 If he does not provide her with these three things, she is to go ...

  4. 2016年12月21日 星期三 --出埃及记 Exodus 21:16

    2016年12月21日 星期三 --出埃及记 Exodus 21:16 "Anyone who kidnaps another and either sells him or still h ...

  5. 11月16日《奥威Power-BI基于SQL的存储过程及自定义SQL脚本制作报表》腾讯课堂开课啦

           上周的课程<奥威Power-BI vs微软Power BI>带同学们全面认识了两个Power-BI的使用情况,同学们已经迫不及待想知道这周的学习内容了吧!这周的课程关键词—— ...

  6. 2016年11月30日 星期三 --出埃及记 Exodus 20:21

    2016年11月30日 星期三 --出埃及记 Exodus 20:21 The people remained at a distance, while Moses approached the th ...

  7. 2016年11月25日 星期五 --出埃及记 Exodus 20:16

    2016年11月25日 星期五 --出埃及记 Exodus 20:16 "You shall not give false testimony against your neighbor.不 ...

  8. 2016年11月21日 星期一 --出埃及记 Exodus 20:12

    2016年11月21日 星期一 --出埃及记 Exodus 20:12 "Honor your father and your mother, so that you may live lo ...

  9. 2016年11月16日 星期三 --出埃及记 Exodus 20:7

    2016年11月16日 星期三 --出埃及记 Exodus 20:7 "You shall not misuse the name of the LORD your God, for the ...

随机推荐

  1. 解决ListView滑动时出现黑边的问题

    [声明]转载请注明出处,此文出自指尖飞落的博客:http://blog.csdn.net/huntersnail --尊重作者,知识无价.交流无限! 两种方法 1.代码去边缘线 myList.setF ...

  2. nginx配置1:借助Nginx搭建反向代理服务器与缓存静态文件

    修改配置文件nginx.conf (1)进程数与每个进程的最大连接数: •nginx进程数,建议设置为等于CPU总核心数 •单个进程最大连接数,那么该服务器的最大连接数=连接数*进程数 (2)Ngin ...

  3. 【转】windows下 ADT NDK开发环境配置

    前提: 下载好Ecplise ADT并配置好开发环境,不会配置环境可以参考这里: http://blog.csdn.net/danfengw/article/details/47111107 步骤: ...

  4. ifndef/define/endif 和 #ifdef 、#if 作用和用法

    为了能简单的看看某些linux内核源码,复习了一下c语音,今天汇总了一下关于宏定义的相关内容: 一.ifndef/define/endif用法: .h文件,如下: #ifndef XX_H #defi ...

  5. angularcli填坑系列(持续更新...)

    1.在xx.ts中引入css样式无效 @Component({ selector: 'app-root', templateUrl: './app.component.html', styleUrls ...

  6. Jeff Dean 排序时间计算

    Quicksort (sometimes called partition-exchange sort) https://en.m.wikipedia.org/wiki/Quicksort

  7. 【题解】P1156垃圾陷阱

    [题解]P1156 垃圾陷阱 乍看此题,我们感觉状态很多,很复杂. 遇到这类型条件比较多的\(dp\),我们不要首先考虑全部设出来,而是要看到这些状态的本质.而在这道题目中,时间和高度就是关键. 考虑 ...

  8. oracle 11g ocr 冗余配置

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/royjj/article/details/30506343  oracle 11g ocr 冗余 ...

  9. Zookeeper 伪分布式部署

    Zookeeper 可以通过配置不同的配置文件启动 部署环境:CentOS 6.7 Zookeeper 路径: /opt/htools/zookeeper-3.4.6 操作步骤: 1 复制三份zoo. ...

  10. render 的执行流程

    流程 :  render 只能识别 字符串,对于其他的css,html,js,jquery样式是不能识别的,它会将文件中的内容解析称为字符串拿到前端页面,浏览器进行渲染. 例如 : # 视图函数 de ...