MySQL业务-发放的优惠券 用户使用情况_20161028
运营部门给用户发放优惠券,如果想监控优惠券的使用效果 优惠券使用率是个反映效果的很好指标
下面sql就是针对某天对特定用户发放的优惠券在发放日期以后每天的使用情况
SELECT e.城市,e.用户ID,i.联系电话,h.订单日期,h.订单ID,h.销售员,h.订单额,e.优惠券ID,e.优惠券名称,CASE WHEN h.优惠额 IS NULL THEN "未使用优惠券" ELSE "使用优惠券" END AS 发放的餐馆是否使用优惠券,e.优惠券档位,h.优惠额
FROM (
SELECT a1.城市,a1.用户ID,DATE(a1.发放日期) AS 发放日期,a1.优惠券ID,a1.优惠券名称,RIGHT(a1.优惠券名称,CHAR_LENGTH(a1.优惠券名称)-CHAR_LENGTH(LEFT(a1.优惠券名称,INSTR(a1.优惠券名称,"【")-1))) AS 优惠券档位
FROM `a015_customer_coupon` AS a1
WHERE a1.城市="杭州" AND a1.发放日期>="2016-10-23" AND a1.发放日期<"2016-10-26" AND a1.优惠券ID>=939 AND a1.优惠券ID<=951
GROUP BY a1.用户ID
) AS e
LEFT JOIN (
SELECT f.*,g.优惠券ID,g.优惠券名称,g.优惠额
FROM (
SELECT f1.城市,f1.用户ID,DATE(订单日期) AS 订单日期,f1.订单ID,f1.销售员,SUM(金额) AS 订单额
FROM `a003_order` AS f1
WHERE f1.金额>0 AND f1.订单日期 >="2016-10-25" AND f1.订单日期<"2016-11-20"
GROUP BY f1.订单ID
) AS f
LEFT JOIN (
SELECT b1.城市,DATE(b1.使用时间) AS 使用日期,b1.用户ID,b1.订单号,b1.优惠券ID,b1.优惠券名称,SUM(b1.优惠券金额) AS 优惠额
FROM `a016_order_customercoupon_xref`AS b1
WHERE b1.城市="杭州" AND b1.使用时间>="2016-10-25" AND b1.使用时间<"2016-11-20" AND b1.优惠券ID>=939 AND b1.优惠券ID<=951
GROUP BY b1.订单号
) AS g ON g.订单号=f.订单ID
) AS h ON e.用户ID=h.用户ID
LEFT JOIN `a001_resterant` AS i ON i.用户ID=e.用户ID
WHERE e.优惠券档位<>"无优惠券"
ORDER BY FIELD(发放的餐馆是否使用优惠券,"使用优惠券","未使用优惠券")
MySQL业务-发放的优惠券 用户使用情况_20161028的更多相关文章
- MySQL 如何更改某一用户及伞下成员的path
MySQL 如何更改某一用户及伞下成员的path 在有的系统中,推荐关系的维护不只是pid那么简单,为了某些业务,可能还会需要维护path字段,path字段的存在,优点在于查询方便,最起码不用递归了 ...
- mysql颠覆实战笔记(二)-- 用户登录(一):唯一索引的妙用
版权声明:笔记整理者亡命小卒热爱自由,崇尚分享.但是本笔记源自www.jtthink.com(程序员在囧途)沈逸老师的<web级mysql颠覆实战课程 >.如需转载请尊重老师劳动,保留沈逸 ...
- Google Analytics for Firebase 是一款免费的应用评估解决方案,可提供关于应用使用和用户互动情况的数据分析
Google Analytics for Firebase Google Analytics for Firebase 是一款免费的应用评估解决方案,可提供关于应用使用和用户互动情况的数据分析.Fir ...
- 删除MYSQL账号多于的空用户
默认情况下,mysql安装好之后,会存在匿名用户,也可以叫空用户,输入mysql之后直接回车便可进入mysql. 该匿名用户具有一定的权限,通过SHOW DATABASES;可以查看到informat ...
- 导致“mysql has gone away”的两种情况
导致“mysql has gone away”的两种情况 By Cruise 1. wait_timeout参数 在开发代理server时, 我使用了jdbc连接数据库,并采用长连接的方式连接数据库 ...
- mysql颠覆实战笔记(三)-- 用户登录(二):保存用户操作日志的方法
版权声明:笔记整理者亡命小卒热爱自由,崇尚分享.但是本笔记源自www.jtthink.com(程序员在囧途)沈逸老师的<web级mysql颠覆实战课程 >.如需转载请尊重老师劳动,保留沈逸 ...
- mysql、添加和删除用户、添加权限
创建用户 mysql>insert into mysql.user(Host,User,Password) values("localhost","tes ...
- 同一个PC只能运行一个应用实例(考虑多个用户会话情况)
原文:同一个PC只能运行一个应用实例(考虑多个用户会话情况) class Program { private static Mutex m; [STAThread] static void Main( ...
- mysql 不同索引的区别和适用情况总结
最近在做sql优化,看到一篇有关sql索引不错的文章,转载一下. 一.索引类型 普通索引:INDEX 允许出现相同的索引内容 (normal) 唯一索引:UNIQUE 不可以出现相同的值,可以有NUL ...
随机推荐
- FTP 连接报错
Filezilla 站点管理器=>选中FTP站点=>加密(只使用普通FTP)
- scikit-learn(project中用的相对较多的模型介绍):2.3. Clustering(可用于特征的无监督降维)
參考:http://scikit-learn.org/stable/modules/clustering.html 在实际项目中,我们真的非常少用到那些简单的模型,比方LR.kNN.NB等.尽管经典, ...
- sqlserver中的时间比较
例子: select count(*) from table where DATEDIFF ([second], '2004-09-18 00:00:18', '2004-09-18 00:00:19 ...
- 宜人贷PaaS数据服务平台Genie:技术架构及功能
上篇:架构及组件 一.数据平台的发展 1.1 背景介绍 随着数据时代的到来,数据量和数据复杂度的增加推动了数据工程领域的快速发展.为了满足各类数据获取/计算等需求,业内涌现出了诸多解决方案.但大部分方 ...
- Oracle 10g ORA-12154: TNS: could not resolve the connect identifier specified 问题解决! 我同事遇到的问题。 username/
Oracle 10g ORA-12154: TNS: could not resolve the connect identifier specified 问题解决! 我同事遇到的问题. userna ...
- 数据结构与算法之枚举(穷举)法 C++实现
枚举法的本质就是从全部候选答案中去搜索正确的解,使用该算法须要满足两个条件: 1.能够先确定候选答案的数量. 2.候选答案的范围在求解之前必须是一个确定的集合. 枚举是最简单.最基础.也是最没效率的算 ...
- excel十几万行数据快速导入数据库研究(转,下面那个方法看看还是可以的)
先贴原来的导入数据代码: 8 import os os.environ.setdefault("DJANGO_SETTINGS_MODULE", "www.setting ...
- IOS简单的渐变绘制
本文转载至 http://www.cnblogs.com/flychen/archive/2012/09/18/2690264.html 前几个星期项目中的音乐列表左边要添加阴影,做成平滑的效果.如图 ...
- python 基础 1.4 python运算符
一. 布尔值: 1>True 2>False 二.关系运算符 “=” (a=b):把b的值赋给a.等号赋值 “==”(a==b): 判断a与b是否相等.返回Trule或Fl ...
- EasyPusher华为手机直播推流硬编码[OMX.IMG.TOPAZ.Encoder] failed to set input port definition parameters.
EasyPusher作为一款RTSP推送利器, 配合EasyDarwin开源流媒体服务器,在发布伊始,很快获得了广大人民群众的一致好评. 但是也有一些用户反映: EasyPusher在我的华为手机上会 ...