- 博客(17)
- 资源 (1)
- 收藏
- 关注
原创 根据商品大类对商品按金额从小到大排序 -- SQL面试题
需求:根据商品大类对商品按金额从小到大排序,前30%为低档,30% 80%为中档,高于80%为高档,打上标签数据:商品大类 商品名称 商品金额 商品档次标签手机 华为mate 2999手机 苹果iPhoneX 699手机 vivo NEX 3000手机 诺基亚7920 583食品 蛋黄酥 10食品 吐司切片蛋糕 32食品 丹麦手撕糕点美食 19.9思路:1、先分组后降序,并利用窗口函数组内排序2、新建一张表取出每个组最大排序值3、与产品表左连接后,通过排序值与最大值来计算排序占比
2021-03-17 23:14:11
1349
原创 用户单次在线最长时间 -SQL面试题
思路:正常情况下,用户登陆、退出时间是挨着的1、根据用户id分组后时间降序排列2、用窗口函数 lead()over()将时间向上平移3、计算时间与平移后的时间差4、用户分组后,计数后取出最大值/*INSERT into log_time values('A',0,'2019-01-01 12:25:30'),('A',1,'2019-01-01 15:25:30'),('A',0,'2019-01-03 10:25:30'),('B',0,'2019-01-02 12:25:30').
2021-03-17 23:07:39
437
原创 用户3年内不同级别违法次数 -- SQL面试题
思路:三年内应该是指用户取得驾照后的3年内,不同年份不同违法次数的分布。第一步,按用户分组,违法时间降序排列;第二步,违法表与用户信息表关联第三步,计算违法时间与取证时间之间的差值第四步,筛选出时间差小于等于3年的,分组后,计数/*insert into `用户表`VALUES(10023,'2015-04-21');insert into `违法表`VALUES(10023,'一级','2017-04-21 14:20:20'),(10023,'二级','2016-04-21.
2021-03-17 23:01:35
272
原创 取部门工资前三高的所有员工 -- sql 面试(三)
取部门工资前三高的所有员工两种思路:1、对于这种分组内取前几名的问题,可以先group by然后用having count()来筛选,比如这题,找每个部门的工资前三名,那么先在子查询中用Employee和自己做连接,连接条件是【部门相同但是工资比我高】,那么接下来按照having count(Salary) <= 2来筛选的原理是:如果【跟我一个部门而且工资比我高的人数】不超过2个,那么我一定是部门工资前三,这样内层查询可以查询出所有符合要求的员工ID,接下来外层查询就简单了。select d
2021-03-04 12:26:38
752
1
原创 每日新老客户数统计--sql 常见面试题(二)
按购买时间统计出每天的新客人数和老客人数名词定义如下:新客:当天有购买,且之前没有购买的人为新客,新客人数+1老客:当天有购买,且之前也有购买的人为老客,老客人数+11)每个用户最近一次购买日期SELECT cust_id,create_at FROM( SELECT *, ROW_NUMBER() OVER (PARTITION BY custid ORDER BY created_at DESC) RowIndex FROM 订单表) BWHERE
2021-03-01 16:47:50
4499
原创 SQL 行列转置 -- 常见面试题(一)
常见面试题如下:先来分析一下:第一步将course 里面的课程转换为列标题,常用 case when 就能解决。SELECT `学号`, max((case when `课程号`='0001' then `成绩` end )) as '语文', max((case when `课程号`='0002' then `成绩` end )) as '数学', max((case when `课程号`='0003' then `成绩` end
2021-03-01 11:43:52
242
原创 通过面试题复盘sql初阶及高阶知识
标题一、数据获取–增删改查1、创建表// 课程表 --主表create table subject(id int not null,subject varchar(200));//学生表-- 从表create table student(id int not null identity(1,1) primary key,//主键自增长 auto_increment/identity(1,1)name char(20) not null,sex char(20) not null de
2021-02-28 18:49:02
330
1
原创 pandas 常用命令集合
一、读取文件1、读取csv、txt 格式时:sep为分隔2符,默认为逗号,如果读取的数据分割的不正常,可能是分隔符的问题,换成正确的分隔符就行。encoding 是编码,有的时候用的是其他编码,如果要正确显示不出现乱码,加上会减少很多意外。engine 是读取的机器,不加这个字段,有时候无法正确读取数据。path1 = r'C:\Users\MAYAN\Downloads\人工对话详情8.1.csv'data1 = pd.read_csv(path1,sep=',',encoding='utf-
2020-10-06 15:30:22
489
原创 机器学习之时间序列模型
一、时间序列概念在生产和科学研究中,对某一个或一组变量x(t)进行观察测量,将在一系列时刻t1, t2, …, tn (t为自变量)按照时间次序排列,并用于解释变量和相互关系的数学表达式。在相等的时间间隔内收集到的不同时间点的数据集合我们称之为时间序列,这种有时间意义的序列也称为动态数据,被用来预测长期的发展趋势。这样的动态数据在自然、经济及社会等领域都是很常见的。如在一定生态条件下,动植物种群...
2020-04-03 11:25:57
3849
原创 机器学习算法 之 回归算法
一、回归和分类的概念了解回归算法之前,先来明确两个概念,回归和分类。回归是指通过算法最终预测出一个连续而具体的值。而分类对应可能结果中的一种。举个例子:从银行贷款,银行根据你提交的资料,最终会决定放贷|不放贷,把你划分到放贷的类型,或不放贷的类型里面,你只能属于其中一个类别,这就叫分类。而银行根据综合评估,最终决定给你贷多少钱,这个就是回归。二、线性回归假设有两个特征x1,x2,通过数...
2020-04-02 17:49:47
2140
原创 互联网金融数据分析指标【汇总】
互联网金融是指借助于互联网技术、移动通信技术实现资金融通、支付和信息中介等业务的新兴金融模式,既不同于商业银行间接融资,也不同于资本市场直接融资的融资模式。互联网金融包括三种基本的企业组织形式:网络小贷公司、第三方支付公司以及金融中介公司。互联网金融的业务类型主要分两类:资金类和资产类。资金类主要包括理财类和吸储类,核心模块:用户转化,用户留存,用户复投等,侧重运营,主要目的是让用户投资。资产...
2020-03-18 23:11:03
9316
原创 机器学习 -- 信用卡评分模型 -- 互联网金融风控
互联网金融主要分为资金类和资产类。资金类主要是理财产品,吸储,主要指标是用户转化、留存和复投,重在客户运营。资产类主要是贷款,包括消费金融和现金贷,小额贷款属于此类,主要目的是用户转化,还款和风险控制,信用卡评分模型就属于风险控制。信用评分作用是对贷款申请人(信用卡申请人)做风险评估分值的方法。 信用卡评分是以大量数据的统计结果为基础,根据客户提供的资料和历史数据对客户的信用进行评估,评分卡模型...
2020-03-18 16:09:07
2105
原创 数据分析 -- 共享汽车运行 案例 (sql 分组后组内运算)
最近接触到一些交通行业的数据,用来练手主要就解决计算以下几个指标:1、接单率2、订单完成率3、接单平均时长4、第二天继续呼叫的比例原始数据及字段如下:一、用sql 实现以下计算1、接单率、订单完成率SELECT sum(case when grab_time = '1971-01-01 00:00:00' then 0 ELSE 1 END)/count(*) as 接单率,...
2020-02-20 09:20:30
947
原创 mysql 、python 时间字符串之间转化
一、mysqlSELECT NOW(); #显示当前日期+时间 2020-02-16 22:10:36 SELECT date(now());#显示当前日期 2020-02-16SELECT date('2018-1-1');SELECT CURRENT_DATE();#显示当前日期2020-02-16SELECT CURRENT_time();#显示当前时间22:10:36 SE...
2020-02-16 23:07:45
2201
原创 echart制作省市疫情地图
看到丁香医生疫情数据地图,觉得比较好看,便参考网上模板,模仿着做了一个。参考:https://www.52pojie.cn/thread-1096756-1-1.html第一步:获取疫情数据信息(数据源:丁香医生)import datetimefrom fake_useragent import UserAgentimport requestsimport reua = UserAg...
2020-02-07 16:58:19
4842
2
原创 数据分析 -- 成都天气分析(2011-2019)
1 数据获取import requestsfrom lxml import etreeimport jsonimport timeclass ChengduClimate: def __init__(self): self.headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/...
2020-01-31 01:07:15
1098
原创 mySQL求中位数、众数
mysql 取中位数、众数-- 求众数SELECT score, count(score) from scores GROUP BY scoreHAVING count(score) >=(SELECT max(a.b) from (SELECT count(score) as b from scoresGROUP BY score) a )-- 求中位数-- 申明...
2020-01-13 18:13:28
2324
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人