因为数据口径的更改,所以.强哥的SQL 比较好用.不会出麻烦. 总共有四个

日常记录下,好好看.

-- 2019年4月核销新客
SELECT
yzm2.consignee_phone AS `会员手机号码`,
yzm2.confirm_time AS `线上首购接单时间`,
yzm2.consign_time AS `线上首购核销时间`,
hcm.id AS 华创会员ID,
hcm.create_date AS 华创会员创建时间,
hcm.fisrt_shopping_time AS 华创会员首购时间
FROM
(
SELECT
tn.id,
tn.consignee_phone,
tn.confirm_time,
MIN( tn.order_time ) AS order_time,
tn.consign_time
FROM
mabao51.trade_onl AS tn
WHERE
tn.consignee_phone IS NOT NULL
AND tn.org_id NOT IN (4000, 4004)
GROUP BY
tn.consignee_phone
) AS yzm1,
(
SELECT
tn.id,
tn.consignee_phone,
tn.confirm_time,
MIN( tn.order_time ) AS order_time,
tn.consign_time
FROM
mabao51.trade_onl AS tn
WHERE
tn.consign_time IS NOT NULL
AND tn.consignee_phone IS NOT NULL
AND tn.org_id > 0
AND tn.org_id NOT IN (4000, 4004)
GROUP BY
tn.consignee_phone
) AS yzm2,
arm_changsha.ms_member_def AS hcm
WHERE
hcm.mobile = yzm1.consignee_phone
AND yzm1.consignee_phone= yzm2.consignee_phone
AND hcm.create_date >= yzm1.order_time
AND yzm2.consign_time BETWEEN "2019-04-01 00:00:00" AND "2019-05-01 00:00:00"

四月门店全部新客

-- 2019年4月41家门店全部新客
/*取出所有顾客的最早销售单的时间,然后判断是否在四月.是这个逻辑,首购判断.新客.去除一些沉默客户*/ SELECT
*
FROM
(
SELECT
gs.member_id,
gs.salesdepart_id,
MIN( gs.sales_date ) sales_date
FROM
arm_changsha.goods_sales AS gs
GROUP BY
gs.member_id
) AS gs2
LEFT JOIN arm_changsha.ms_member_def AS m ON m.id = gs2.member_id
LEFT JOIN (
SELECT
tn.org_id_erp
FROM
mabao51.trade_onl AS tn
WHERE
tn.org_id > 0
AND tn.org_id NOT IN (4000, 4004)
AND tn.order_time BETWEEN "2019-04-01 00:00:00" AND "2019-05-01 00:00:00"
GROUP BY
tn.org_id_erp
) AS yzo ON yzo.org_id_erp = gs2.salesdepart_id
WHERE
gs2.sales_date BETWEEN "2019-04-01 00:00:00"
AND "2019-05-01 00:00:00"
AND m.create_date > "2019-01-01 00:00:00"
AND yzo.org_id_erp IS NOT NULL

四月全部购买人数

-- 2019年4月41家门店全部购买人

SELECT
*
FROM
(
SELECT
gs.member_id,
gs.salesdepart_id,
gs.sales_date
FROM
arm_changsha.goods_sales AS gs
) AS gs2
LEFT JOIN (
SELECT
tn.org_id_erp
FROM
mabao51.trade_onl AS tn
WHERE
tn.org_id NOT IN (4000, 4004)
AND tn.org_id > 0
AND tn.order_time BETWEEN "2019-04-01 00:00:00" AND "2019-05-01 00:00:00"
GROUP BY
tn.org_id_erp
) AS yzo ON yzo.org_id_erp = gs2.salesdepart_id
WHERE
gs2.sales_date BETWEEN "2019-04-01 00:00:00"
AND "2019-05-01 00:00:00"
AND yzo.org_id_erp IS NOT NULL
GROUP BY
gs2.member_id

四月全部销售额

-- 2019年4月41家门店销售总额

SELECT
ROUND(
(
SUM( gsd.deal_price * gsd.sales_number ) - IFNULL( SUM( gsp.gift_balance ), 0 )
) / 10000,
2
) AS amount
FROM
(
SELECT
id,
salesdepart_id
FROM
goods_sales
WHERE
-- salesdepart_id = "11"
-- AND
sales_date BETWEEN "2019-04-01 00:00:00"
AND "2019-04-30 23:59:59"
) AS gs
LEFT JOIN goods_sales_detail AS gsd ON gsd.sales_id = gs.id
LEFT JOIN goods_sales_pay_detail gsp ON CONCAT( gsp.sales_id, '_', gsp.goods_id ) = CONCAT( gs.id, '_', gsd.goods_id )
LEFT JOIN (
SELECT
tn.org_id_erp
FROM
mabao51.trade_onl AS tn
WHERE
tn.org_id NOT IN ( 4000, 4004 )
AND tn.org_id > 0
AND tn.order_time BETWEEN "2019-04-01 00:00:00" AND "2019-05-01 00:00:00"
GROUP BY
tn.org_id_erp
) AS tn2 ON tn2.org_id_erp = gs.salesdepart_id
WHERE
tn2.org_id_erp IS NOT NULL

强哥新周报SQL的更多相关文章

  1. 个人IP「Android大强哥」上线啦!

    自从入职新公司之后就一直忙得不行,一边熟悉开发的流程,一边熟悉各种网站工具的使用,一边又在熟悉业务代码,好长时间都没有更文了. 不过新公司的 mentor(导师)还是很不错的,教给我很多东西,让我也能 ...

  2. php大力力 [023节]CREATE TABLE创建新表sql写字段备注(2015-08-27)

    2015-08-27 php大力力023.CREATE TABLE创建新表sql写字段备注 http://www.cnblogs.com/dalitongxue/p/4762182.html 参考: ...

  3. 新 Azure SQL 数据库服务等级的性能

    4 月 24 日,我们发布了 SQL Database 基本级(预览版)和标准级(预览版)新服务等级的预览版以及新的业务连续性功能.在本博客文章中,我们将深入探究 SQL Database 中新等级的 ...

  4. 11g的新特性:SQL Plan Management(SPM)

    Oracle11g中,Oracle提供dbms_spm包来管理SQL Plan,SPM是一个预防机制,它记录并评估sql的执行计划,将已知的高效的sql执行计划建立为SQL Plan Baseline ...

  5. Oracle 11g 新特性 --SQL Plan Management 说明

    Oracle 11g 新特性 --SQL Plan Management 说明 参见大神博主文章: http://blog.csdn.net/tianlesoftware/article/detail ...

  6. VFP 用 SPT 来发布一条 SELECT 到一个新的 SQL Server 表

    为了发布一条 SQL SELECT 语句来创建一个新的 SQL Server 表,  SQL Server 数据库的 select into/bulkcopy 选项必须是可用的. 在默认情况下, 对于 ...

  7. 价格更低、SLA 更强的全新 Azure SQL 数据库服务等级将于 9 月正式发布

    继上周公告之后,很高兴向大家宣布更多好消息,作为我们更广泛的数据平台的一部分, 我们将在 Azure 上提供丰富的在线数据服务.9 月,我们将针对 Azure SQL 数据库推出新的服务等级.Azur ...

  8. 11g新特性-SQL Plan Management

    在11g之前版本,提供了stored outlines(sql概要)特性来保存sql的执行计划. 在11g中,引入了一个新的特性sql计划管理(sql plan management)特性来保存sql ...

  9. 官方文档:11G新特性SQL PLAN BASLINE 执行计划基线

    什么是SQL执行计划管理? SQL计划管理(SQL plan management)是一咱预防机制,记录和评估SQL语句的执行计划.SQL plan management的主要功能是sql plan ...

随机推荐

  1. GD Library extension not available

    在后台文章上传封面时,遇到了这样一个错误 GD Library extension not available with this PHP installation Ubuntu Nginx 自己在本 ...

  2. TP 验证码

    TP自带验证码类Verify.class.php 生成验证码 public function verify_c(){ session_start(); ob_clean(); $Verify = ne ...

  3. 洛谷 P1589 泥泞路 & 2019青岛市竞赛(贪心)

    题目链接 https://www.luogu.org/problemnew/show/P1589 解题思路 用结构体存下每一段泥泞路的左端点和右端点,然后用sort根据左端点排序,采用贪心的思想,从左 ...

  4. 8、numpy——数组的迭代

    1.单数组的迭代 NumPy 迭代器对象 numpy.nditer 提供了一种灵活访问一个或者多个数组元素的方式. 迭代器最基本的任务的可以完成对数组元素的访问. 1.1 默认迭代顺序 import ...

  5. 【转】通俗理解Java序列化与反序列化

    一.序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化. 把字节序列恢复为对象的过程称为对象的反序列化. 对象的序列化主要有两种用途: 1) 把对象的字节序列永久地保存到硬盘上,通常存 ...

  6. windows下安装oracle11g

    第一步:一定要先做这一步. Oracle11g 安装过程出现提示:未找到文件 D:\app\Administrator\product\11.2.0\dbhome_2\owb\external\oc4 ...

  7. ApacheHttpServer修改httpd.conf配置文件

    转自:https://blog.csdn.net/dream1120757048/article/details/77427351 1. 安装完 Apache HTTP Server 之后,还需要修改 ...

  8. UIViewController push或presentViewController 弹出方式

    //导航控制器数量 add xjz 判断是push还是present出来的 NSArray *viewcontrollers = self.navigationController.viewContr ...

  9. DTS

    一.DTS的加载过程   如果要使用Device Tree,首先用户要了解自己的硬件配置和系统运行参数,并把这些信息组织成Device Tree source file.通过DTC(Device Tr ...

  10. 一、表单和ajax中的post请求&&后台获取数据方法

    一.表单和ajax中的post请求&&后台获取数据方法 最近要做后台数据接收,因为前台传来的数据太过于混乱,所以总结了一下前台数据post请求方法,顺便写了下相对应的后台接收方法. 前 ...