子查询
AIPL漏斗分析

Ⅰ:

①作为取值范围
       
像这样,用一对圆括号 () 包裹,作为一个元素参与到外层查询中的查询,被称为 子查询。
  

 

ps:此时的子查询,是外层查询中 WHERE 子句的一部分,所以从语法角度而言,它并不是一条完整的子句,末尾是不可以加分号的。再从语句功能看,它是 item_id 列的取值范围,因此在子查询的 SELECT 子句中,必须同样检索出 item_id 列,此时取值范围才是成立的。

重点:子查询可以作为外层查询的 筛条件 中的 取值范围,写在 WHERE 子句里。

 

②作为计算字段

完全限定列名:例如  brands.brand_id = items.brand_id。这里的 brands.brand_id 和 items.brand_id 和我们以前使用的列名不同,它们都带数据表信息。英文句点 . 前面的内容,表示来源于哪一张数据表,后面是具体的列名。

 PS:SQL会把 () 视作一个“虚拟的算式”
         若去掉外层查询的别名,则第一个字段的字段名将会是整条子查询的内容。

 

AIPL 理论模型:

Awareness:认知人群,对商品停留在认知层面;
Interest:兴趣人群,在认知基础上,对商品产生兴趣;
Purchase:购买人群,顾名思义,购买了商品的人群;
Loyalty:忠诚人群,即平台的忠实用户,可以理解为“回头客”。

 

 

A(认知人群):浏览商品信息页;
I(兴趣人群):收藏商品、将商品加入购物车;
P(购买人群):购买商品;
L(忠诚人群):再次购买商品。

其行为类型(type)共有四类:
pv(page view):浏览商品信息页;
fav(favorite):收藏商品;
cart:将商品加入购物车;
buy:购买商品。

A 值的计算
A(认知人群)这一环节包含一种行为:浏览商品信息页。因此我们计算 A 的值,实际上就是统计类型为 ‘pv’ 的行为次数。
SELECT count(iif(type = ’pv‘,1,NULL)  AS A
 I 值的计算
I(兴趣人群)值的计算方法也是类似的。由于这个环节包含两种行为:收藏和加入购物车,所以我们只用修改 iif() 函数的条件,也就是第一个参数,就能得到最终的结果
SELECT count(iif(type=IN(‘fav’,’cart’),1,NULL)) AS I
P 值的计算
如法炮制,我们统计出类型为 ‘buy’ 的数据个数,就能得到 P(购买人群)的值 (和A 一样算法)
L 值的计算
由于 L 环节统计的是用户复购行为,而原始的数据表中只记录了 购买(buy) 这一项,并没有对是否为复购进行标记。所以计算 L 的值需要分为两步,先统计出每位用户在这段时间内的购买次数,找出购物次数超过 1 的用户,在此基础上再统计复购用户数量
(SELECT       count(*)  AS 购物次数
FROM          user_behavior
WHERE        type = ‘buy’
GROUP BY  user_id
HAVING      购物次数 >1
)  AS  L          

③作为数据来源

子查询的功能,与它出现的位置是息息相关的。当一个子查询出现在外层查询的 FROM 子句里时,这个子查询就被视为了外层查询的 数据来源。外层查询会在子查询的结果上进行进一步的查询。

④子查询的嵌套

原文地址:http://www.cnblogs.com/catch-autumn/p/16826653.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性