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. 【C语言】linux C写入本地文件

    //定义写入文件 FILE *pFile; //定义文件路径变量 ]; //变量赋值 sprintf(local_file,"/tmp/test.json"); //打开文件 pF ...

  2. CuteEditor.Editor+a+a+c+a+a.a() System.RuntimeType.get_Assembly() 问题解决方法

    问题: Server Error in '/' Application. Attempt by method 'CuteEditor.Editor+a+a+c+a+a.a()' to access m ...

  3. 【Head First Servlets and JSP】笔记7:如何创建一个全局的dog?

    重定向与请求分派 “局部”参数——ServletConfig——servlet初始化参数 “全局”参数——ServletContext——上下文初始化参数 Web app的“构造器”——Servlet ...

  4. python 运行报错 Process finished with exit code -1073741819 (0xC0000005)

    发现是由于openpyxl模块导致的,去掉这个模块的内容就能运行,import openpyxl就运行不起来, 将openpyxl卸载了重装, 以及更换了不同的openpyxl版本,都不行,还是运行不 ...

  5. linux之下载工具wget

    常用格式:wget options URL -b,  --background        启动后转入后台执行 -c,  --continue               接着下载没下载完的文件 - ...

  6. Cisco学习笔记

    目录 1. 路由 1.1 静态路由 1.2 动态路由 2. 访问控制列表 2.1 标准访问控制列表 2.2 扩展访问控制列表 2.3 命名访问控制列表 3. VLAN 3.1 基础知识 3.2 配置实 ...

  7. window.open、window.showModalDialog和window.showModelessDialog 的区别[转]

    一.前言 要打开一个可以载入页面的子窗口有三种方法,分别是window.open.window.showModalDialog和window.showModelessDialog. open方法就是打 ...

  8. 偏远小渔村选手的noip2017游记

    这次noip估计是我初中最后一次比赛了,毕竟初三狗还要准备中考,要是中考挂了就GG了. 在最终成绩的榜上,我看到我成绩400,非常意外(你们这群大佬赛前天天奶我,还好不是毒奶),更意外的是全省竟然只有 ...

  9. CentOS 7 安装 docker-compose

    compose是用来在docker中定义和运行复杂应用的小工具,比如在一个文件中定义多个容器,只用一行命令就可以让一切就绪并运行. 安装pip: 这里显示,找不到相应的包?? 说没有python-pi ...

  10. 格点多边形面积公式(Pick定理)的一个形象解释(转)

    Pick定理:如果一个简单多边形(以下称为“多边形”)的每个顶点都是直角坐标平面上的格点,则称该多边形为格点多边形.若一个面积为S的格点多边形,其边界上有a个格点,内部有b个格点,则S=a/2+b-1 ...