产品经理学SQL

共 1608字,需浏览 4分钟

 ·

2022-02-19 17:33








最近在工作中需要查询一些数据进行数据分析,又不好每次都麻烦开发小哥哥,于是只能动手自己查询。今天就来聊聊如何取数。(其实严格意义上来说,SQL不能算是一门编程语言,只能算是一个取数工具。


学习SQL的好处

1、不用每次都麻烦开发

找开发小哥哥给你查询数据,你可能得等半天,而自己查询的话,一两分钟的事情。装逼,又高效。

2、为转型数据产品经理打下基础

很多小伙伴都说自己想做数据产品经理,想做人工智能产品经理。不论是人工智能还是大数据产品经理都是需要和数据打交道的,想做人工智能首先就要学习机器学习,机器本身就需要大量的数据进行喂养才能达到学习的效果。而大部分的数据来源都是公司的数据仓库,SQL语言可以帮你了解机器学习的指标体系构建和特征提取。

3、高效处理数据

产品经理日常和数据打交道的场景很多。大部分同学可能都是通过EXCEl进行数据的可视化,比如做数据透视表这些。但是如何从多张表执行繁杂的“连接”操作和“分组”后“选择”需要的字段,这些EXCEl实现不了,但是对于SQL来说就是一句话的事情。


SQL实例讲解

1、数据库单表查询

1.1 基本的查询语法

select 列名 ---查询指定要显示的字段;如果要查看所有的列,则用*号表示

From 表A ---选择要查询的表

where 限制条件 ---各种过滤条件,例如:大于,小于等

Group by ---按指定列名进行分组统计。比如今天新增了多少名会员,今天形成了多少笔订单

Having 列名 ---对分组统计的结果进行限制。主要用来做顾虑。比如我统计每天的订单总数是多少,统计出来以后,我想知道订单总数大于100 的是多少,主要对Group by统计之后的数据进行过滤

Order by 列名 ---对查询结果进行排序(ASC升序,Desc降序),默认是升序

Limit N ---给出N条数据

1.2 实例讲解

比如订单 by_order表结构:

例子1:查询表前10行数据

例子2:找出订单金额大于200的顾客

如果会员重复怎么办呢?比如同个会员买了两次,每次金额都大于200,但我只想知道买过的金额大于200的会员有哪些,这个时候该怎么办呢?

答案是可以用distinct去重。

例子3:找出订单金额大于20小于200的顾客

例子4:按照订单金额进行排序

如果你想降序排列



1.3 汇总:group by

实际工作中的你也不会只看订单明细,而需要看看每一天的订单总额、每个顾客的每天购买金额这类数据,那这种统计类的数据就需用到Group by了。

Group by 一定是跟着汇总函数一起使用

基本的汇总函数有以下几项:

max() 统计最大

min() 统计最小

count() 计数,如果需要去计算列去重,则count(distinct)

avg() 计算平均数

sum() 汇总


例子1:统计顾客的累计购买金额

例子2:统计各个顾客的每天购买金额

备注:as sum_money 和as as day_1 都是取别名用的。

如果不写as sum_money,则显示的是左边的列表,如果加入as sum_money 则最终结果显示的下图右边的表格

遇到不懂的技术问题怎么办?

1、询问技术

抽屉里常备一些零食,没事给同事发一发,平时多帮帮别人,下次向人请教,别人也愿意帮助你。

2、百度

能百度找到答案的问题都不是问题。不要懒,也不要轻易麻烦别人。在工作中也一样,自己能解决的问题不要找领导,除非拼尽全力也解决不了。

3、多实践

掌握的技术知识还得在实践中多练习。就像高中物理老师给我们上完课以后,我们需要通过大量的习题来巩固知识一样。学习到的这些知识还是得在实践中多多练习。


浏览 24
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报