全国 做网站的企业网站分析报告范文

diannao/2026/1/17 1:32:05/文章来源:
全国 做网站的企业,网站分析报告范文,教育网站制作论文,苏州官网设计写在开头#xff1a;本章是Hive教程第六部分#xff0c;着重于归纳SQL编写。文章内容输出来源#xff1a;拉勾教育大数据高薪训练营。本章将介绍Hive中常见的面试题和自己的解答思路#xff0c;以供大家训练和记忆。SQL面试题1、求连续7天登录的用户— 数据。uid dt status…写在开头本章是Hive教程第六部分着重于归纳SQL编写。文章内容输出来源拉勾教育大数据高薪训练营。本章将介绍Hive中常见的面试题和自己的解答思路以供大家训练和记忆。SQL面试题1、求连续7天登录的用户— 数据。uid dt status(1 正常登录0 异常)1 2019-07-11 1 1 2019-07-12 1 1 2019-07-13 1 1 2019-07-14 1 1 2019-07-15 1 1 2019-07-16 1 1 2019-07-17 1 1 2019-07-18 1 2 2019-07-11 1 2 2019-07-12 1 2 2019-07-13 0 2 2019-07-14 1 2 2019-07-15 1 2 2019-07-16 0 2 2019-07-17 1 2 2019-07-18 0 3 2019-07-11 1 3 2019-07-12 1 3 2019-07-13 1 3 2019-07-14 0 3 2019-07-15 1 3 2019-07-16 1 3 2019-07-17 1 3 2019-07-18 1思路典型的连续值求解问题可以按照以下思路进行求解使用 row_number 在组内给数据编号(rownum)某个列值 – rownum gid得到结果可以作为后面分组计算的依据这个某个列值该题目问日期是否连续所以拿日期这列根据求得的gid作为分组条件求最终结果因为求的是连续七天登录的用户所以这个列值选dt,所以先写sqldate_sub为dt与rownum的差值select uid,dt,status, date_sub(dt,row_number() over(partition by uid order by dt)) gid from ulogin where status 1首先来看下结果从上述步骤中我们需要按照gid和uid进行分组然后计算出相同gid的个数然后再选出大于7的数据即可。所以在原先基础上在套一层select查询做条件筛选所以完整SQL这样写select uid,count(*) countlogin from (select uid,dt,status, date_sub(dt,row_number() over(partition by uid order by dt))gid from ulogin where status 1) tmp group by uid,gid having countlogin 7;可以看出连续登陆七天以上的用户只有uid而且uid连续登陆了8天。2.编写sql语句实现每班前三名分数一样并列同时求出前三名按名次排序的分差TopN问题— 数据。sid class score1 1901 90 2 1901 90 3 1901 83 4 1901 60 5 1902 66 6 1902 23 7 1902 99 8 1902 67 9 1902 87— 待求结果数据如下class score rank lagscore 1901 90 1 0 1901 90 1 0 1901 83 2 -7 1901 60 3 -23 1902 99 1 0 1902 87 2 -12 1902 67 3 -20从结果要求上可以看出首先要用到排序函数排除顺序然后使用序列函数将数据整体下移一行然后才可以相减算差值。而且可以看到需要按class分组。首先我们写出有排名函数的sqlselect class,score, dense_rank() over(partition by class order by score desc) rank from stu然后将score下移一行将下移后的数据额外增加一列lagscore并指定按照class分区按照score降序排序。select class,score, dense_rank() over(partition by class order by score desc) rank, lag(score) over(partition by class order by score desc) lagscore from stu从上图中我们可以看到数据下移后会有null值我们可以使用nvl函数进行处理接下来我们处理差值问题我们可以直接用score列减去lag(score) over(partition by class order by score desc)这行sql。如下所示:select class,score, dense_rank() over(partition by class order by score desc) rank, nvl(score-lag(score) over(partition by class order by score desc),0) lagscore from stu接下来按照题目要求要前三名的数据。那么我们可以再嵌套一层select语句加上where条件完成select class,score,rank,lagscore from (select class,score, dense_rank() over(partition by class order by score desc) rank, nvl(score-lag(score) over(partition by class order by score desc),0) lagscore from stu) tmp where rank3;从上可以看出结果。3.综合八道题现在有三张表第一张表的部分数据第二张表的部分数据第三张表部分数据1、按年统计销售额思路使用join连接saledetail和sale表连接条件为orderid又因为按年统计所以要按照年分组。这里使用year函数获取年份sum函数进行求和求和完成后除掉10000意思单位以万元计再使用round函数保留小数点2位。SELECT year(B.dt) year, round(sum(A.amount)/10000, 2) amount FROM saledetail A join sale B on A.orderidB.orderid group by year(B.dt);2、销售金额在 10W 以上的订单思路按照orderid做分组然后求和求出和后选出金额大于十万的数据。SELECT orderid, round(sum(amount), 2) amount FROM saledetail group by orderid having sum(amount) 1000003、每年销售额的差值思路先求出每一年的销售额按照年分组然后求和思路与第一题一致因为要求差值所以要用到某一列去减序列函数所以将第一步得到的结果作为表t1然后以t1表作为基表去求差值用total-lag函数完成运行。with t1 as (select year(s.dt) year,round(sum(amount)/10000,2) total from saledetail st join sale s on st.orderids.orderid group by year(s.dt) ) select year, round(total - lag(total) over(order by year),2) diff from t1;4、年度订单金额前10位年度、订单号、订单金额、排名思路连续值求解问题我们可以先求出年度订单的总金额也就是用年和订单id来分组用sum求和。然后作为基表去查询排名函数dense_rank求得排好序的数据表。最后再作为基表添加where过滤条件得到结果。with t1 as( select year(dt) dt,s.orderid orderid,sum(amount) total from saledetail sd join sale s on sd.orderids.orderid group by year(dt),s.orderid ), t2 as( select dt,orderid,total, dense_rank() over(partition by dt order by total desc) rank from t1 ) select dt,orderid,total,rank from t2 where rank10部分结果5、季度订单金额前10位年度、季度、订单id、订单金额、排名思路比上一题增加了季度季度在日期表中有所以这里要三表连接然后再使用排名函数dense_rank()按照年和季度分区按照金额降序排序最后在嵌套一层select语句即可完成。with tmp as ( select C.year, C.quat, A.orderid, round(sum(B.amount), 2) amount from sale A join saledetail B on A.orderidB.orderid join dimdate C on A.dtC.dt group by C.year, C.quat, A.orderid ) select year, quat, orderid, amount, rank from ( select year, quat, orderid, amount, dense_rank() over (partition by year, quat order by amount desc) rank from tmp ) tmp1 where rank 10;这里展示部分结果6.求所有交易日中订单金额最高的前10位思路TopN问题首先根据日期和订单id分组使用sum函数求出总金额然后使用dense_rank()排名函数根据总金额降序排序最后使用where条件选出相应的数据。with tmp as ( select A.dt, A.orderid, round(sum(B.amount), 2) amount from sale A join saledetail B on A.orderidB.orderid group by A.dt, A.orderid ) select dt, orderid, amount, rank from ( select dt, orderid, amount, dense_rank() over(order by amount desc) rank from tmp ) tmp1 where rank 10;7、每年度销售额最大的交易日思路首先按年分组使用sum函数求和然后再使用max函数挑出每年最大的交易时间。with tmp as ( select A.dt, round(sum(B.amount), 2) amount from sale A join saledetail B on A.orderidB.orderid group by A.dt ) select year(dt) year, max(amount) dayamount from tmp group by year(dt); 8、年度最畅销的商品(即每年销售金额最大的商品) 思路现根据年和商品分组使用sum求出总金额然后使用排名函数dense_rank()排名按照年分区按照总金额降序排序。因为题目要最畅销商品所以where条件要rank1。with tmp as ( select year(B.dt) year, goods, round(sum(amount),2) amount from saledetail A join sale B on A.orderidB.orderid group by year(B.dt), goods ) select year, goods, amount from (select year, goods, amount, dense_rank() over (partition by year order by amount desc) rank from tmp) tmp1 where rank 1;写在结尾这里归纳了常见的sql面试题需要大家记忆连续值求解和TopN问题当然也需要不断理解相应的业务来变化sql代码。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/91230.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

做企业网站需要注意哪些网页制作工具有哪些

文章目录机器学习定义说人话例子专家系统 定义好, 应招,速度快机器学习 实验 奖惩 调参对象任务 TASK T一个或多个经验 EXPERIENCE性能PERFORMANCE类比人类学习监督学习半监督学习无监督学习增强学习可解决问题不可解决问题举例f(x&#xff0…

广州营销型网站优化做的很好的网站

一、查询 递归查询 寻找的值比根节点大&#xff0c;遍历右子树&#xff1b; 寻找的值比根节点小&#xff0c;遍历左子树。 def qurey(self, node, val):if not node: # 没有节点&#xff0c;返回空return Noneif node.data < val:return self.qurey(node.rchild, val)el…

简洁手机购物网站会员中心模板广东东莞大益队

1.最大文件打开数限制查看前用户进程打开的文件数限制&#xff0c;命令行执行&#xff1a;ulimit -n默认1024.这表示当前用户的每个进程最多允许同时打开1024个文件&#xff0c;这1024个文件中还得除去每个进程必然打开的标准输入&#xff0c;标准输出&#xff0c;标准错误&…

手机上怎么做能打开的网站吗中国企业网官方网站

基础 java基础 JDK 和 JRE JDK&#xff0c;它是功能齐全的 Java SDK&#xff0c;是提供给开发者使用&#xff0c;能够创建和编译 Java 程序的开发套件。它包含了 JRE,同时还包含了编译 java 源码的编译器 javac 以及一些其他工具比如 javadoc&#xff08;文档注释工具&#…

邯郸网站建设邯郸网站制作品牌设计图片

传送门 文章目录题意&#xff1a;思路题意&#xff1a; 给你一张nnn个点mmm个边的图&#xff0c;mmm条边是给定的&#xff0c;要求你给未给定的边赋值一个边权&#xff0c;使得所有边权异或和为000&#xff0c;求所有满足这种情况的图中最小生成树边权和最小的&#xff0c;输出…

合肥网站制作费用没有网站可以域名备案

priority case语句 一个priority case可能具有多个条件选项匹配 priority case语句指定&#xff1a; 至少有一个条件选项的值与条件表达式匹配如果有多个条件选项的值与条件表达式匹配&#xff0c;必须执行第一个匹配分支 修饰符priority表示设计者认为两个或多个条件选择表…

保定建设网站沂水网站制作

猫罐头牌子哪个好一点&#xff1f;选择猫罐头是十分重要的事情&#xff0c;千万不能将就。因为&#xff0c;好的猫罐头不仅可以营养丰富&#xff0c;水分充足&#xff0c;适口性好&#xff0c;还能易吸收。而一旦选择错误&#xff0c;不仅无法达到上述效果&#xff0c;还可能产…

网站自适应源码wordpress 数据采集

工厂方法模式&#xff08;Factory Method&#xff09;是一种常用的创建型设计模式&#xff0c;它提供了一种创建对象的最佳方式。在工厂方法模式中&#xff0c;我们在创建对象时不会对客户端暴露创建逻辑&#xff0c;并且是通过使用一个共同的接口来指向新创建的对象。 意图 …

做简单网站装一网装修平台官网

丑数 题目要求 解题思路 首先判断数字是不是为0或者负数&#xff0c;两者均不可能成为丑数&#xff1b; 之后对n进行不断整除&#xff0c;直到无法除尽为止。 简单判断最后的数是不是1即可。 代码 class Solution:def isUgly(self, n: int) -> bool:if n<0:return Fa…

如何做微信网站前端好学吗需要学多久

在本题中&#xff0c;我们是要把一个数组&#xff0c;分割成两个子集&#xff0c;并且两个子集的元素和相等。那么也就是说&#xff0c;两个子集的和是相等的&#xff0c;并且都是整个数组的一半。那我们考虑这是一个01背包问题&#xff0c;物品的价值和物品的质量一样&#xf…

儿童 网站 设计欣赏网站单页站群

1、如何跳过对某行数据的处理 第一行数据是字段名不需要处理&#xff0c;我们知道第一行偏移量是0&#xff08;行记录的时候是从数组首地址开始&#xff0c;到了行标识符进行一次计数&#xff0c;这个计数就是行偏移量&#xff0c;从0开始&#xff09;&#xff0c;我们根据偏移…

如何在百度搜索到自己的网站电子商务网站建设实习

一、介绍 命令模式&#xff08;Command Pattern&#xff09;&#xff0c;是行为型设计模式之一。命令模式相对于其他的设计模式来说并没有那么多的条条框框&#xff0c;其实它不是一个很”规范“的模式&#xff0c;不过&#xff0c;就是基于这一点&#xff0c;命令模式相对于其…

wordpress全站同一个标题wordpress谷歌字体

Python入门必学&#xff1a;单引号、双引号与三引号的差异与应用 &#x1f308; 个人主页&#xff1a;高斯小哥 &#x1f525; 高质量专栏&#xff1a;Matplotlib之旅&#xff1a;零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程 &#x1f448; 希望得…

建设企业网站官网登录北京万户网络

使用Paddle-Lite在 Android 上实现实时的人脸检测 1 环境准备2. 部署步骤2.1 下载Paddle-Lite-Demo2.2 运行face_detection_demo项目3 使用Opencv对后处理进行优化4 开启手机摄像头进行人脸检测1 环境准备 参考前一篇在 Android 上使用Paddle-Lite实现实时的目标检测功能 2. …

qq邮箱官网登录入口长春seo关键词排名

在微服务集成——《微服务设计》读书笔记文章中&#xff0c;我们说过服务间的消息传递有几种方式&#xff0c;一种是请求/响应技术&#xff0c;另一种是基于事件的机制。 RPC&#xff08;远程过程调用&#xff09; RPC是Remote Procedure Call的简称。 这是请求/响应技术的一种…

海口市做网站的公司网站建设与网页设计心得体会

2023-12-18 官方发布了PuTTY 0.80本次发布主要是针对Terrapin攻击(CVE-2023-48795)的修改发布。 更多详细的内容请查看PuTTY Change Log。 有关Terrapin攻击可用简单参考&#xff1a;警告&#xff01;&#xff01;&#xff01;Terrapin攻击(CVE-2023-48795)~~~ 为了缓解此漏洞…

网站备案需要关站成都公司建网站

【LetMeFly】106.从中序与后序遍历序列构造二叉树&#xff1a;分治&#xff08;递归&#xff09;——五彩斑斓的题解&#xff08;若不是彩色的可以点击原文链接查看&#xff09; 力扣题目链接&#xff1a;https://leetcode.cn/problems/construct-binary-tree-from-inorder-an…

xml天气预报网站怎么做ppt网站建设

本文使用 Zhihu On VSCode 创作并发布Paper | Code本文一作实在是太大佬了&#xff0c;让我和小伙伴焦虑了好一阵子。作者主页送你们&#xff0c;将这份焦虑传递下去。Introduction图生成有很多用处&#xff1a;建模physical and social interactions发现新的化学和分子结构构建…

有没有学做衣服的网站wordpress 修改网址导航

1.智能GPT 项目地址&#xff1a;智能GPT&#xff1a;你只要提供OpenAI的API Key&#xff0c;那么它就可以根据你设定的目标&#xff0c;采用Google搜索、浏览网站、执行脚本等方式 主要语言&#xff1a;Python 推荐理由&#xff1a;这是由开发者Significant Gravitas推出的项目…

游戏网站建设杭州wordpress搜索框删除

转载自 MySQL last_insert_id()函数 MySQL LAST_INSERT_ID函数简介 在数据库设计中&#xff0c;我们经常使用代理键使用AUTO_INCREMENT属性为主键列生成唯一的整数值。 当您将新行插入到具有AUTO_INCREMENT列的表中时&#xff0c;MySQL会自动生成一个唯一的整数&#xff0c…