首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

作业

(另一种方法与第二题一样,注意这里因为茶馆和酒吧都没有评价数据,所以使用函数计算会报错,但是不影响结果。) 4.类型为川菜店中,有多少个带「辣」字,又有多少个带「麻」字?...答:求饭店家数,肯定要用到计数函数,这里有两种写法。...10.对上海地区日本料理,做一次描述性分析(开放题) 答:描述性分析是数据选项卡中数据分析里描述统计,包含统计一些指标如最大值,最小值,平均数,中位数,方差等。...1.统计不同月份下单人数 分析:首先应过滤出成功购买数据即是已支付,然后考虑统计不同月份是按月份分组需要用到groupby关键字,统计人数是计数需要用count函数,这里要注意一个问题因为有的人有多次购买行为...分析:首先应把已支付的人过滤出来,然后在此基础加上按年龄段分组,使用case……when……then语句。

3.9K30

统计不同值7种方法

当将计数取倒数时,会得到一个分数值,列表中每个不同值加起来就是1。然后,SUM函数将所有这些分数相加,总数就是列表中不同项目的数量。...然后,选择单元格区域B4:B13,单击功能区“数据”选项卡“排序和筛选”组中“高级”命令。在“高级筛选”对话框中,勾选“选择不重复记录”复选框,如下图4所示。...图4 单击“确定”按钮,结果如下图5所示。...图6 在数据透视表字段中,选取获取不同值计数字段到行,如下图7所示。 图7 在工作表中,选择数据透视表数据,可以在底部状态栏中看到计数值为4,即为不同值个数,如下图8所示。...图10 在“值字段设置”对话框中,选取“计算类型”列表中“非重复计数”,如下图11所示。 图11 单击“确定”,结果如下图12所示。

81210
您找到你想要的搜索结果了吗?
是的
没有找到

SQL、Pandas和Spark:如何实现数据透视表?

在上述简介中,有两个关键词值得注意:排列和汇总,其中汇总意味着产生聚合统计,即groupby操作;排列则实际隐含着使汇总后结果有序。...这里,SQL中实现行转列一般配合case when,简单也可以直接使用if else实现。由于这里列字段只有0和1两种取值,所以直接使用if函数即可: ?...,否则不计数(此处设置为null,因为count计数时会忽略null值),得到结果记为survived=0个数; 如果survived字段=1,则对name计数,否则不计数,此时得到结果记为survived...这样,得到结果就是最终实现数据透视表需求。...值得指出,这里通过if条件函数来对name列是否有实际取值+count计数实现聚合,实际还可以通过if条件函数衍生1或0+sum求和聚合实现,例如: ? 当然,二者结果是一样

2.6K30

图解面试题:如何分析红包领取情况?

下图是两表联结条件(通过用户ID和日期联结)。 (3)使用哪种联结呢? 因为查询是领取红包用户,所以保留“领取红包”表(上图右表)中全部数据,因此使用右联结。...涉及到多条件判断问题,要想到用case语句来实现: case when 新用户=1 then 新用户     when 新用户=0 then 老用户     else 未登录用户end 把两表联结sql...: (2)把一步查询结果记为临时表a。...from 用户活跃表 as mleft join 领取红包表 as non a.登录日期 = b.抢红包日期 and a.用户ID = b.用户ID; 把上面查询结果记为临时表a,题目分析是“每个月领过红包用户...4.按条件统计数时候,结合case语句和sum来统计数,例如之前课程里讲过下面案例 ​

1.3K20

PortSwigger之SQL注入实验室笔记

查询结果在应用程序响应中返回,因此您可以使用 UNION 攻击从其他表中检索数据。构建这样攻击,首先需要确定查询返回列数。您可以使用在之前实验室中学到技术来完成此操作。...查询结果在应用程序响应中返回,因此您可以使用 UNION 攻击从其他表中检索数据。构建这样攻击,您需要结合您在之前实验室中学到一些技术。...您可以使用 UNION 攻击从注入查询中检索结果解决实验室问题,请显示数据库版本字符串。...14.在 Positions 选项卡中,将 cookie 值更改为:TrackingId=bhpYlLKIavhTKuTR'||(SELECT CASE WHEN SUBSTR(password,1,1...在 Positions 选项卡中,将 cookie 值更改为:TrackingId=x'%3BSELECT+CASE+WHEN+(username='administrator'+AND+SUBSTRING

2.1K10

Power BI: 分析DAX查询计划

文章背景: 最近在学习DAX权威指南第19章,介绍了DAX查询引擎组件,解释了如何使用DAX Studio获取与特定DAX表达式相关查询计划和性能计数信息。...打开分析Power BI Desktop文件,使用DAX Studio选择对应文件名称可以连接这个Power BI模型,如下图所示。...你可以很容易地发现第一个查询持续时间约为3s。剩余所有查询都非常快,因此不必花精力去关注。DAX Studio可以让你快速发现最慢查询,然后将注意力集中在这些查询。...每个查询结果都是通过执行以下步骤生成: 构建表达式树; 构建逻辑查询计划; 构建物理查询计划; 执行物理查询计划。 第1步和性能分析无关。第2和第3步涉及公式引擎,而第4步还涉及存储引擎。...对于物理查询计划,列表中还提供了一个列,其中包含spool操作迭代记录数(spool操作是由公式引擎执行迭代,通常在数据缓存执行)。

30510

mysql 提升tps_MYSQLTPS优化

1、摘要 系统初期使用是分布式微服务,但是所有业务模型都在同一个数据库实例,数据库压力会非常大,这时需要找出系统执行频率比较高SQL,进行优化。...Com_insert/s + Com_update/s + Com_delete/s qps=Com_select/s + Com_insert/s + Com_update/s + Com_delete/s 根据公式将两次统计结果值取平均值...这个和上面统计数据基本一致。 2.4.4、分析哪些SQL执行频率比较高。 发现有两条SQL执行频率最高,找到需要优化地方。...一种用for循环通过循环传过来参数集合,循环出N条sql,另一种 用mysqlcase when 条件判断变相进行批量更新 。...第二种方式使用case when 且where条件中用in 无法利用索引,且容易产生死锁。 另外有使用spring batch 效率可能会更高点,由于没有尝试过,这里无法判断。

1.2K20

走近源码:神奇HyperLogLog

此时丫丫已经完成了n个回合,并且告诉Jack最长一次抛了3次,Jack此时也胸有成竹,马上说出他答案8,最后结果是:丫丫只抛了一回合,Jack输了,负责刷碗一个月。...最终公式如图 ? HyperLogLog公式 其中m是桶数量,const是修正常数,它取值会根据m而变化。...其他过程不难理解,用存储方式是我们前面提到过稀疏存储,创建对象实质是一个字符串对象,这也是字符串命令可以操作HyperLogLog对象原因。...而稀疏存储结构复杂一些: 判断是否需要调整为密集存储结构,如果不需要则继续进行,否则就先调整为密集存储结构,然后执行添加操作 我们需要先定位修改字节段,通过循环计算每一段表示范围是否包括修改桶...定位到桶后,如果这个桶已经是VAL,并且计数值大于当前添加计数值,则返回0,如果小于当前计数值,就进行更新 如果是ZERO,并且长度为1,那么可以直接把它替换为VAL,并且设置计数值 如果不是上述两种情况

80620

RFM 客户价值分析模型

RFM 模型三个参数分别是 R(最近一次消费时间间隔)、F(消费频次)和 M(消 费金额)。 R 即最近一次消费时间间隔,指一次购买时间距离当天时间间隔。...从理论上说, 距离一次消费时间较近客户应该是比较优质客户,对提供即时商品或服务也最 有可能有反应。...在打开公式文本框中输入以下表达式 : 时间间隔 = DATEDIFF('pbi 订单报表 '[ 订单付款时间 ],TODAY(),DAY) 计算最小 R,选中“订单报表”,在“建模”选项卡中单击“新建度量值...对“订单编号”进行计数,可以选中“ pbi 订单报表”,在“建模”选项卡中单击“新 建度量值”按钮。...分别将“客户价值”和“买家会员名”设置为“表格”对象,然后将“买家会员名” 设置为计数结果如图8所示。 最终结果如图9所示。

1.5K10

带你学MySQL系列 | 这份MySQL函数大全,真的超有用!

2)ifnull函数:判断值是否为null,是null用指定值填充; 3)casewhen函数三种用法; ① casewhen用作等值判断语法格式; ② casewhen用作区间判断语法格式...函数:判断值是否为null,是null用指定值填充; 3)casewhen函数三种用法; casewhen共有三种用法,我相信自己总结会相当全面。...等值判断:类似于java中switch case效果; 区间判断:类似于python中if-elif-else效果; casewhen和聚合函数联用; ① casewhen用作等值判断语法格式...; case 判断字段或表达式 when 常量1 then 显示值1或语句1 when 常量2 then 显示值2或语句2 ... else 显示值n或语句n end 操作如下:...② casewhen用作区间判断语法格式; case when 条件1 then 显示值1或语句1 when 条件2 then 显示值2或语句2 ... else 显示值n或语句n

1.5K40

图解面试题:如何分析用户满意度?

) / (在学校里的人数) 由这个公式可以知道,分子和分母计算前提都是存在学校里用户。...我们可以把“是”转化成1,然后累计求和,对应sql就是: sum(case when 是否满意='是' then 1 else 0 end) 2)计算b b=在学校里的人数,直接用计数函数...满意度 把这个计算公示加入前面sql语句查询结果里就是(下面的select子句): select sum(case when 满意度表.是否满意='是' then 1 else 0 end)/count...group by trips.request_at 3.计算取消率 被司机或乘客取消非禁止用户生成订单数量= sum(case when status = 'completed' then 1 ...else 0 end) 非禁止用户生成订单总数=count(status) 最终sql如下: select sum(case when trips.status = 'completed' then

89500

30道经典SQL面试题讲解(11-20)

= 2 then sales end) as m2     ,sum(case when month_num = 3 then sales end) as m3     ,sum(case when ...这里需要注意一下各判断执行顺序,先去执行第一行case when,然后再去执行第二行。...,需要做第一件事就是对成绩进行分段,利用就是case when,对成绩分段完成以后再对分段结果进行group by,然后再在组内计数获得每个分段内学生数。...首先我们还是需要把每门课程以及被选择的人数获取出来,获取思路与第一种思路是一样,也是针对课程进行group by,然后再针对组内的人数进行计数;不同点在于最多人数获取。...这是因为我们负责是与数据相关工作,而获取数据是我们工作第一步,比如,你通过数据做决策,但是现在公司数据基本不存储在本地Excel 表中,而是存储在数据库中,想要从数据库中获取数据就需要使用SQL

24820

图解面试题:人均付费如何分析?

(1)各城市(每个城市),也就是按城市分组 (group by) select 城市from 各城市用户ARPU值group by 城市; (2)对用户ARPU值进行分类,用case when 语句选出...例如,ARPU值在(0,30)范围内计数为1 ,代码如下: select 城市,count(case when ARPU值>0 and ARPU值0 and ARPU值<30 then 1 else null end ) as "(0,30)",count(case when ARPU...下面是记录该活动“活动表”。 找出哪些用户获得什么奖品。 【解题思路】 大白话为:根据用户(用户id)分组(group by),用case  when 语句选出点赞数区间,符合并计数。...select 点赞用户id,count(好友昵称),(case when count(好友昵称)>=6 then "充电宝"      else "零食"      end) as "奖品名称"from

92440

数据蒋堂 | 遍历复用

如果我们把这句SQL写成这样: SELECT SUM(CASE WHEN A=a1 THEN M ELSE 0 END), SUM(CASE WHEN A=a2 THEN M ELSE...作为数据库程序员,学会这种技巧。 ---- 不过,并不是所有运算都可以用CASE WHEN来对付。...SQL没有直接提供遍历复用语法,不同WHERE还可以用CASE WHEN去绕,但不同GROUP BY就无法再合并起来了,只能遍历两次表T。...) pg = ch.result() channel(cs)在游标cs绑定一个管道ch,并且定义一个针对P分组运算,然后游标cs照常遍历并实施针对D分组运算,遍历完毕后,从管道ch中取了相关结果就可以了...计算中位数时需要排序,但一般情况下排序运算只管排序本身,并不管计数,排序完成了甚至还不知道总共有多少数据, 这时候找中位数,就还得再做一次COUNT遍历数据,浪费时间。

45820

如何快速搞定SQL面试题?这5步法给你答案

拆解问题 为了得到最终查询结果表,我们可以将问题拆解为下面几个部分。 (1)将“评分表”按照0-5 分、5-7 分、7-9 分、9 分及以上4 个区间进行分组。 (2)对每个区间房源进行计数。...', (case when 分数>=7 and 分数<9 then 房源号 end) as '7-9', (case when 分数>=9 then 房源号 end) as '9+' (2)对每个区间房源进行计数...在第(1)步SQL 语句中,每个case 表达式前面加上计数函数count(),用于统计每个区间房源数量。...例如,区间0-5 房源数代码如下: count(case when 分数<5 then 房源号 end) as '0-5', 对应逻辑关系如图1 所示。 图1 对应关系 5....(case when 分数>=9 then 房源号 end) '9+' from 评分表; 查询结果如表3 所示,将其填充至题目所要求“查询结果表”中即可。

9710

利用 SQL 实现数据分组与透视

数据分组是对相同类别的数据进行汇总,而数据透视表是通过对行或列不同组合对数据进行汇总,所使用汇总方法有求和、计数、平均值、标准差等,本文使用SQL对数据进行数据分组和数据透视,下面一起来学习。...普通分组 普通数据分组这里使用GROUP BY函数,同时使用COUNT函数进行计数。...分组筛选 如何对于分组后结果进行筛选?...CASE WHEN分组 CASE WHEN函数用来对数据进行判断和分组,下面的代码中我们对score列值进行判断,score大于90为优秀,score大于80为良好,score大于70为中等, score...数据透视 在SQL中想要达到数据透视表功能,需要GROUP BY与CASE WHEN结合使用,下面这条SQL语句可以计算不同分数段的人数,现用CASE WHEN对不同分数段进行分类,然后,用GROUP

2.3K20

一文搞懂case when所有使用场景「建议收藏」

前几天,为了给产品分析当前用户数据结构,写sql时候使用到了case when,今天来总结一下case when 使用方法,以此为戒,感觉写不好请拍砖,感觉写还可以,给哥们点个赞,或者回复一下,...等值转换 咱们在设计数据库时候总是会把用户性别用int存储(’0’为女,’1’为男),但是怎么把它转换成汉字显示呢?...查询结果 范围转换 有的时候,也会遇到这种情况,按照用户成绩显示优(90+)、良(80-90)、及格(60-80)、未及格(60-),这个跟第一个不同是,他是一个分数范围,怎么转换成汉子显示呢?...这个查出来结果是 这是为啥呢?想明白了吗?...因为 case when就像一个 switch case语句一样,如果你在case后填了东西,它会拿后它跟when 对比,咱们case 后写=了 score 而when后面写了score>=90

55530
领券