1 问题运行SQL取数语句出错?。

答案:因为运行SQL文件时没有这个表。新的数据库里面

解决方法:

  1.   获取需要建立的二维表创建语句
  2. 新建查询
  3. 输入语句,点击运行即可

解释注释语句:

主体为五个字段的主表。接下来都是添加的类似需要的计算字段。

重置为子表与主表进行关联取数。一个字段为一个表。

#控奶新客:T-14至T-7内购买大于等于1,且T-14至T-194(最远到7月)未购控奶
#T为1月13日;
DELETE
FROM
`0114-0120控奶新客`; #写入会员基本信息
INSERT INTO `0114-0120控奶新客` (
门店ID,
门店,
会员姓名,
手机号码,
控奶首购时间
) SELECT
*
FROM
(
SELECT
a.salesdepart_id AS 门店ID,
b.`name` AS 门店,
c.`name` AS 会员姓名,
c.mobile AS 手机号码,
MIN(d.create_date) AS `控奶首购时间`
FROM
arm_changsha.goods_sales AS a
LEFT JOIN arm_changsha.sys_office AS b ON b.id = a.salesdepart_id # 表关联信息。逻辑表关联
LEFT JOIN arm_changsha.ms_member_def AS c ON c.id = a.member_id
LEFT JOIN arm_changsha.goods_sales_detail AS d ON d.sales_id = a.id
LEFT JOIN arm_changsha.goods_base AS e ON e.id = d.goods_id
WHERE
a.sales_type = ''
AND d.barcode IN (
SELECT
条码
FROM
`tmp_通货`
WHERE
商品标签 = '非通货'
AND 大类 LIKE '01%'
)
AND c.mobile NOT IN (
SELECT
mobile
FROM
`7~9月英克系统消费客户统计`
)
AND c.mobile IS NOT NULL
GROUP BY
c.mobile
) AS L
WHERE
`控奶首购时间` >= '2018-12-31 00:00:00'
AND `控奶首购时间` <= '2019-01-06 23:59:59'; #写入首购购买数量
UPDATE `0114-0120控奶新客` AS a
SET a.`控奶首购数量` = (
SELECT
sum(b.sales_number) AS 购买数量
FROM
arm_changsha.goods_sales_detail AS b
LEFT JOIN arm_changsha.goods_sales AS d ON d.id = b.sales_id
LEFT JOIN arm_changsha.ms_member_def AS c ON c.id = d.member_id
LEFT JOIN arm_changsha.goods_base AS e ON e.id = b.goods_id
WHERE
c.mobile = a.手机号码
AND b.create_date = a.控奶首购时间
AND e.kind_id LIKE '01%'
AND d.sales_type = ''
AND b.barcode IN (
SELECT
条码
FROM
`tmp_通货`
WHERE
商品标签 = '非通货'
AND 大类 LIKE '01%'
)
); #写入T+7控货奶粉购买数量
UPDATE `0114-0120控奶新客` AS a
SET a.`T+7控奶购买数量` = (
SELECT
sum(b.sales_number) AS 购买数量
FROM
arm_changsha.goods_sales_detail AS b
LEFT JOIN arm_changsha.goods_sales AS d ON d.id = b.sales_id
LEFT JOIN arm_changsha.ms_member_def AS c ON c.id = d.member_id
WHERE
c.mobile = a.手机号码
AND b.create_date >= '2019-01-21 00:00:00'
AND b.create_date <= '2019-01-27 23:59:59'
AND d.sales_type = ''
AND b.barcode IN (
SELECT
条码
FROM
`tmp_通货`
WHERE
商品标签 = '非通货'
AND 大类 LIKE '01%'
)
); #写入T+7复购金额
UPDATE `0114-0120控奶新客` AS a
SET a.`T+7复购金额` = (
SELECT
ROUND(SUM(b.real_pay) / 10000, 2) AS 累计消费金额
FROM
arm_changsha.goods_sales AS b
LEFT JOIN arm_changsha.ms_member_def AS c ON c.id = b.member_id
WHERE
c.mobile = a.手机号码
AND b.create_date >= '2019-01-21 00:00:00'
AND b.create_date <= '2019-01-27 23:59:59'
AND b.sales_type = ''
GROUP BY
b.member_id
); #写入T+7购买次数
UPDATE `0114-0120控奶新客` AS a
SET a.`T+7小票数` = (
SELECT
COUNT(DISTINCT b.sales_id)
FROM
arm_changsha.goods_sales_detail AS b
LEFT JOIN arm_changsha.goods_sales AS d ON d.id = b.sales_id
LEFT JOIN arm_changsha.ms_member_def AS c ON c.id = d.member_id
WHERE
c.mobile = a.手机号码
AND b.create_date >= '2019-01-21 00:00:00'
AND b.create_date <= '2019-01-27 23:59:59'
AND d.sales_type = ''
); #写入近90日充值金额
UPDATE `0114-0120控奶新客` AS a
SET a.`近90日充值金额` = (
SELECT
ROUND(
sum(b.use_recharge_balance) / 10000,
2
) AS 充值金额
FROM
arm_changsha.ms_member_card_log AS b
LEFT JOIN arm_changsha.ms_member_def AS c ON c.id = b.member_id
LEFT JOIN arm_changsha.ms_acct_book_def AS d ON d.member_id = b.member_id
WHERE
c.mobile = a.手机号码
AND d.acct_id IS NOT NULL
AND b.oper_type IN ('', '', '')
AND b.create_date >= '2018-10-16 00:00:00'
AND b.create_date <= '2019-01-13 23:59:59'
); #写入近90天控货奶粉购买数量
UPDATE `0114-0120控奶新客` AS a
SET a.`近90日控奶购买数量` = (
SELECT
sum(b.sales_number) AS 购买数量
FROM
arm_changsha.goods_sales_detail AS b
LEFT JOIN arm_changsha.goods_sales AS d ON d.id = b.sales_id
LEFT JOIN arm_changsha.ms_member_def AS c ON c.id = d.member_id
WHERE
c.mobile = a.手机号码
AND b.create_date >= '2018-10-16 00:00:00'
AND b.create_date <= '2019-01-13 23:59:59'
AND d.sales_type = ''
AND b.barcode IN (
SELECT
条码
FROM
`tmp_通货`
WHERE
商品标签 = '非通货'
AND 大类 LIKE '01%'
)
); #判断是否运营门店
UPDATE `0114-0120控奶新客` AS a
SET a.`是否运营门店` = CASE
WHEN a.门店ID IN (
'',
'',
'',
''
) THEN
'是'
ELSE
'否'
END; #判断是否稳定
UPDATE `0114-0120控奶新客` AS a
SET a.`是否稳定` = CASE
WHEN a.近90日控奶购买数量 >= ''
OR a.近90日充值金额 >= '' THEN
'是'
ELSE
'否'
END;

表关联逻辑,对应键值。

NAVICAT PREMIUM 初识的更多相关文章

  1. 数据库管理工具GUI - PremiumSoft Navicat Premium Enterprise 11.2.15 x86/x64 KEY

    转载自: 数据库管理工具GUI - PremiumSoft Navicat Premium Enterprise 11.2.15 x86/x64 KEY Navicat Premium(数据库管理工具 ...

  2. mysql 5.7 的安装配置与 navicat premium for mysql 11 的破解使用

    再安装mysql5.7 或以上的版本出现了一些问题,现在总结下,希望能给初入学习mysql的人一下帮助,大牛就不要来嘲笑小弟我了 首先准备如下: 1.下载mysql 5.7,下载地址:https:// ...

  3. Navicat Premium相关注册码

    --Navicat for SQL Server V10.0.10NAVD-3CG2-6KRN-IEPMNAVL-NIGY-6MYY-XWQENAVI-C3UU-AAGI-57FW --Navicat ...

  4. Navicat premium工具常用快捷键

    Navicat premium是一款数据库管理工具,它可以以单一程式同时连线到MySQL.PostgreSQL. Oracle .SQL Server 及 SQLite 资料库,让管理不同类型的资料库 ...

  5. 用Navicat Premium 远程连接oracle数据库

    1.安装Navicat Premium软件(我的是11.0.7版本)(假设安装路径为D:\NavicatLite\Navicat Premium) 2.下载 instantclient-basic-n ...

  6. 在64位Win7中使用Navicat Premium 和PL\SQL Developer连接Oracle数据库备忘

    最近接手了一个项目,服务器端数据库是oracle 11g 64位.由于主要工作不是开发,也不想在自己的电脑上安装庞大的oracle数据库,因此寻思着只通过数据库管理工具连接数据库进行一些常用的查询操作 ...

  7. mac上安装Navicat Premium 破解版+汉化包

    Navicat是一款非常强大的sql分析管理工具.以前一直在windows上面使用. 由于工作的需要,我也是折腾出了这不易的mac破解版.下了好多网上的版本,亲测这个可用. 俗话说:工欲善其事,必先利 ...

  8. mycat启动后,用Navicat Premium 连接报 "2013"

    最近在学习mycat,启动后,用Navicat Premium 连接报 "2013"  Lost Connection During Query ,经过一顿百度也没发现是怎么回事, ...

  9. 关于Navicat Premium导入xlsx的问题

    这段时间由于工作需要,频繁通过Oracle导入/导出大量数据,测试了很多软件,都不理想.PL/SQL Developer导入.导出都卡死:Oracle SQL Developer也是导入.导出都卡的半 ...

随机推荐

  1. 006-重装yum

    报错情况: There was a problem importing one of the Python modulesrequired to run yum. The error leading ...

  2. 解决 flex align-items:center 无法居中(微信小程序)

    因为最近再做小程序,需要用到flex布局,因为写惯了web项目,初次学习确实感弹性布局的强大(关键是不用再管可恶的ie了). 但是也遇到了align-items:center无法居中的问题,想了很久终 ...

  3. sequence.c

    /* * sequence.c */ #include <stdio.h> #include <memory.h> /* * SM3算法产生的哈希值大小(单位:字节) */ # ...

  4. $Android自定义控件在不同状态下的属性

    在写代码的时候,有时候需要控件在不同状态下显示不同的外观,比如在按钮按下的时候要变颜色,EditText获取焦点时候边框要变颜色等.那么下面就来梳理一下这些是怎么实现的. (一)按钮按下时候变颜色 1 ...

  5. 容器排序之sort,stable_sort

    bool isShorter(const string &s1, const string &sz){ return s1.size() < sz.size(); } int m ...

  6. GP DBA基本操作

    1.查看队列情况 SELECT * FROM gp_toolkit.gp_resqueue_status; 如果出现了资源占用大于1.1 e+11SQL,则可能存在不合理执行计划的SQL, 基本跑不出 ...

  7. Go 书单

    一.<Go语言学习笔记> (未找到对应版本的电子书,大家可以去作者github:https://github.com/qyuhen/book) 推荐理由:作为时下流行的一种系统编程语言,G ...

  8. POJ 3159 最短路 SPFA

    #include<iostream> using namespace std; const int nMax = 30005; const int mMax = 150005; const ...

  9. javaMail发送邮件实例

    背景:最近项目里有个实时发送邮件的功能,今天闲下来整理 一下,记录下来方便以后直接使用. 代码: package com.dzf.utils; import java.io.File; import ...

  10. JAVA获取Spring上下文

    1. 添加监听 public class SpringContextListener implements ServletContextListener { //获取spring注入的bean对象 p ...