NAVICAT PREMIUM 初识
1 问题运行SQL取数语句出错?。

答案:因为运行SQL文件时没有这个表。新的数据库里面
解决方法:
- 获取需要建立的二维表创建语句

- 新建查询

- 输入语句,点击运行即可

解释注释语句:
主体为五个字段的主表。接下来都是添加的类似需要的计算字段。
重置为子表与主表进行关联取数。一个字段为一个表。
#控奶新客: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 初识的更多相关文章
- 数据库管理工具GUI - PremiumSoft Navicat Premium Enterprise 11.2.15 x86/x64 KEY
转载自: 数据库管理工具GUI - PremiumSoft Navicat Premium Enterprise 11.2.15 x86/x64 KEY Navicat Premium(数据库管理工具 ...
- mysql 5.7 的安装配置与 navicat premium for mysql 11 的破解使用
再安装mysql5.7 或以上的版本出现了一些问题,现在总结下,希望能给初入学习mysql的人一下帮助,大牛就不要来嘲笑小弟我了 首先准备如下: 1.下载mysql 5.7,下载地址:https:// ...
- Navicat Premium相关注册码
--Navicat for SQL Server V10.0.10NAVD-3CG2-6KRN-IEPMNAVL-NIGY-6MYY-XWQENAVI-C3UU-AAGI-57FW --Navicat ...
- Navicat premium工具常用快捷键
Navicat premium是一款数据库管理工具,它可以以单一程式同时连线到MySQL.PostgreSQL. Oracle .SQL Server 及 SQLite 资料库,让管理不同类型的资料库 ...
- 用Navicat Premium 远程连接oracle数据库
1.安装Navicat Premium软件(我的是11.0.7版本)(假设安装路径为D:\NavicatLite\Navicat Premium) 2.下载 instantclient-basic-n ...
- 在64位Win7中使用Navicat Premium 和PL\SQL Developer连接Oracle数据库备忘
最近接手了一个项目,服务器端数据库是oracle 11g 64位.由于主要工作不是开发,也不想在自己的电脑上安装庞大的oracle数据库,因此寻思着只通过数据库管理工具连接数据库进行一些常用的查询操作 ...
- mac上安装Navicat Premium 破解版+汉化包
Navicat是一款非常强大的sql分析管理工具.以前一直在windows上面使用. 由于工作的需要,我也是折腾出了这不易的mac破解版.下了好多网上的版本,亲测这个可用. 俗话说:工欲善其事,必先利 ...
- mycat启动后,用Navicat Premium 连接报 "2013"
最近在学习mycat,启动后,用Navicat Premium 连接报 "2013" Lost Connection During Query ,经过一顿百度也没发现是怎么回事, ...
- 关于Navicat Premium导入xlsx的问题
这段时间由于工作需要,频繁通过Oracle导入/导出大量数据,测试了很多软件,都不理想.PL/SQL Developer导入.导出都卡死:Oracle SQL Developer也是导入.导出都卡的半 ...
随机推荐
- Apache JServ Protocol (AJP)
The Apache JServ Protocol (AJP) is a binary protocol that can proxy inbound requests from a web serv ...
- 004-ibus输入法,快捷键,浏览器
一.输入法 用 root 身份在终端下,运行下面命令: yum install ibus-pinyin ibus ibus-gtk ibus-qt 使用im-chooser命令,选择ibus为默认输入 ...
- django内容总结
一.django请求的生命周期 1.django请求生命周期如图所示 2.django本身没有socket,客户端请求先到达wsgi然后再提交给django,而wsgi的本质就是个socket程序 注 ...
- 常用mysql导入导出数据的命令
To export 导出指定db_name的数据: $ mysqldump -u [uname] -p[pass] db_name > db_backup.sql 导出整个库的数据: $ mys ...
- python3 多线程编程
python / 并发 / 线程 / 对象 / 编程 0.什么是线程 1. 多线程模块 2. 创建线程的方法 3. join()方法 4.isAlive()方法 5. name属性和daemon属 ...
- jquery的autocomplete在firefox下不支持中文输入法的bug
Query.Autocomplete 是jquery的流行插件,能够很好的实现输入框的自动完成(autocomplete).建议提示(input suggest)功能,支持ajax数据加载. 但唯一遗 ...
- css系列(5)css的运用(一)
从本节开始介绍css配合html可以达到的一些效果. (1)导航栏: <html> <head> <title>示例5.1</title> ...
- $Java正则表达式基础整理
(一)正则表达式及语法简介 String类使用正则表达式的几个方法: 正则表达式支持的合法字符: 特殊字符: 预定义字符: 方括号表达式: 圆括号表达式:用于将多个表达式组成一个子表达式,可以使用或运 ...
- matlab 三维绘制
1. mesh(Z)语句 mesh(Z)语句可以给出矩阵Z元素的三维消隐图,网络表面由Z坐标点定义,与前面叙述的x-y平面的线格相同,图形由邻近的点连接而成.它可用来显示用其它方式难以输出的包含大量数 ...
- Java中ArrayList和LinkedList区别、ArrayList和Vector的区别
一般大家都知道ArrayList和LinkedList的大致区别: 1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构. 2.对于随机访问get和set,Ar ...