当前位置: 首页 > news >正文

大数据面试-笔试SQL

一个表table: c_id u_id score;用SQL计算每个班级top5学生的平均分(腾讯)

select class_id,avg(score) as score_avg
from
(select *,row_number() over(partition by class_id order by score desc) as score_rank
from table
) t1
where t1.score_rank<=5
gropu by t1.class_id

计算连续登陆3天的用户?营业额连续增长的店铺?(腾讯、零食有鸣)

--原始数据
u_1 2024-08-01
u_1 2024-08-02
u_1 2024-08-03
u_1 2024-08-05
u_1 2024-08-06u_2 2024-08-01
u_2 2024-08-03
--lag() over()函数+dadediflag(date,1)  diff_1   lag(date,2).   diff_2
u_1 2024-08-01  null         null    null            null
u_1 2024-08-02  2024-08-01    1      null            null
u_1 2024-08-03  2024-08-02    1      2024-08-01      1
u_1 2024-08-05  2024-08-03    2      2024-08-02      1
u_1 2024-08-06  2024-08-05    1      2024-08-03      2u_2 2024-08-01  null          1      null            null
u_2 2024-08-03  2024-08-01    2      null            nullselect distinct user_id
from table
where lag(date,1) is not nulland diff_1=1and diff_2=1

腾讯SQL手写笔试题目

在这里插入图片描述
在这里插入图片描述

1.
先会有登陆事件、再有对局事件
login_log表作为left join的主表一个玩家登陆之后,可能会对应多次对局
对局时间大于最近一次登陆时间:每一个对局时间,对应多个登陆时间,找到最晚的那一个就可以了select t1.uid,t2.battle_time,max(login_time) as  login_time
from login_log t1
left join battle_log t2 
on t1.uid=t2.uid
and t1.login_time<t2.battle_time
group by t1.uid,t2.battle_time2.
首先进行split切分操作
其次进行行转列操作,将数据打散
最后按照兴趣聚合select hobby_new_1,count(name) as user_cnt
from
(
select t1.name,t2.hobby_new_1
from
(select name,split(hobby,'+') as hobby_new 
from hobby_detail
) t1
lateral view explode(t1.hobby_new) hobby_new_1 as t2
) t
group by hobby_new_1

腾讯SQL手写笔试题目

在这里插入图片描述

问题1
引擎:hive/spark
语句:
select stu_id
from scoce_detail
group by stu_id
having min(score) > 60;
思路:在scoce_detail表中,每一个学生最小的成绩只要大于60分,那么其他科目都满足条件,该学生就是目标学生(前提是学生某些科目没有成绩,不做过滤)问题2
引擎:hive/spark
语句:
select t.stu_id
from
(select stu_id,count(if(subject='数学',1,null)) as math_subject_cnt 
from score_detail
group by stu_id
having(count(if(subject='数学',1,null)))<1
) t ;
思路:统计每个学生下的 数学科目的条数,如果数学科目条数小于1,代表该学生没有数据成绩

相关文章:

大数据面试-笔试SQL

一个表table: c_id u_id score&#xff1b;用SQL计算每个班级top5学生的平均分&#xff08;腾讯&#xff09; select class_id,avg(score) as score_avg from (select *,row_number() over(partition by class_id order by score desc) as score_rank from table ) t1 where t…...

希尔排序和直接插入排序

因为排序这些比较复杂点我就分几期给大家来讲~~~ 直接插入排序 直接插入排序是一种简单的排序算法&#xff0c;主要用于对少量数据进行排序。其基本思想是将待排序的元素逐个插入到已经排好序的部分中&#xff0c;从而形成一个有序序列。 具体步骤如下&#xff1a; 初始化&…...

IDEA 配置 Git 详解

本文将介绍在IntelliJ IDEA 中如何配置Git 没有安装配置 Git 的可以参考我的这篇文章&#xff1a;安装配置 Git 一、操作环境及准备 1.win 10 2.已安装且配置了Git 3.有Gitee账户 4.安装了IntelliJ IDEA 2023.2.1 5.全程联网 二、配置步骤 2.1 配置git 1.采用全局设置&…...

Docker 部署 Redis 监控系统实战:Redis Exporter 与 Prometheus 完整配置指南

Docker 部署 Redis 监控系统实战&#xff1a;Redis Exporter 与 Prometheus 完整配置指南 文章目录 Docker 部署 Redis 监控系统实战&#xff1a;Redis Exporter 与 Prometheus 完整配置指南一 缓存简述二 redis exporter 部署三 环境变量配置四 修改文件权限五 验证 exporter …...

高级算法设计与分析-MaxFlow网络流基础知识

MaxFlow网络流 1 网络流基础概念 source:源点 sink:终点 Flow:流量 capacity:容量 Residual:残量 Residual Network:残量网络 Augmenting path:增广路径,表示从源点 s 到终点 t 不包含环的路径 Bottleneck capacity:瓶颈容量 2 最大流 2.1 基础概念 2.2 增广路算法 …...

Java项目实战II基于Java+Spring Boot+MySQL的桂林旅游景点导游平台(源码+数据库+文档)

目录 一、前言 二、技术介绍 三、系统实现 四、文档参考 五、核心代码 六、源码获取 全栈码农以及毕业设计实战开发&#xff0c;CSDN平台Java领域新星创作者 一、前言 桂林&#xff0c;以其独特的喀斯特地貌、秀美的自然风光闻名遐迩&#xff0c;每年吸引着无数国内外游…...

C语言-输入输出

实验一&#xff1a;编写一个输出两行自定义字符的 C 程序 一、实验目的 熟悉 C 语言的基本结构和语法。掌握 printf() 函数的使用方法。了解在 Code::Blocks 中编写、编译和运行程序的过程。 二、实验内容 编写一个 C 程序&#xff0c;要求输出两行字符&#xff0c;内容自定…...

如何在GitHub上传自己的项目?(一文看懂,每一步的操作和解决常见错误的方法)

目录 步骤一&#xff1a;准备 Git 环境 1. 安装 Git 2. 配置 Git 步骤二&#xff1a;在 GitHub 创建一个新的仓库 1. 登录到你的 GitHub 账号。 2. 点击右上角的 号&#xff0c;然后选择 New repository。 3. 填写以下信息&#xff1a; 步骤三&#xff1a;将本地项目上…...

数据结构_day1

目录 大纲 1.数据结构基础知识 1.1 什么是数据结构 1.2 数据 1.3 逻辑结构 1.4 存储结构 1.4.1 顺序存储 1.4.2 链式存储 1.4.3 索引存储结构 1.4.4 散列存储 1.5 操作 2.算法基础知识 2.1 什么是算法 2.2 算法的设计 2.3 算法的特性 2.4 评价算法的好坏 大纲 数据结构、算法(理…...

c# using 声明进行资源管理

在 C# 8 中&#xff0c;using 声明引入了一种新的语法&#xff0c;称为 using 声明&#xff0c;它使得开发人员在处理资源时的代码更加简洁和清晰。主要的变化包括 使用声明 和 使用上下文&#xff08;using declaration&#xff09; 的引入。 使用语句的简化 在 C# 8 中&…...

Kafka之基本概念

1、Kafka是什么&#xff1f; Kafka是由Scala语言开发的一个多分区、多副本&#xff0c;基于Zookeeper集群协调的系统。 那这个所谓的系统又是什么系统呢&#xff1f; 回答这个问题要从发展的角度来看&#xff1a;起初Kafka的定位是分布式消息系统。但是目前它的定位是一个分布…...

倪师学习笔记-天纪-斗数简介

一、学习过程 学习->验证->思考 二、算命方法 算命方法特点铁板神数适合核对六亲子平法准确度一般紫微斗数天文地理融合最好&#xff0c;批六亲不准&#xff0c;配合相可以提升准确率 三、果 天地人三者一起影响果&#xff0c;天时地利人和促成成功1/31/31/31算命部…...

Python酷库之旅-第三方库Pandas(143)

目录 一、用法精讲 646、pandas.Timestamp.is_quarter_start属性 646-1、语法 646-2、参数 646-3、功能 646-4、返回值 646-5、说明 646-6、用法 646-6-1、数据准备 646-6-2、代码示例 646-6-3、结果输出 647、pandas.Timestamp.is_year_end属性 647-1、语法 647…...

细说QT各种线程锁的特点和用法

文章目录 QMutex特点用法QReadWriteLock特点用法QSemaphore特点用法QWaitCondition特点用法在Qt框架中,提供了多种线程同步机制,包括互斥锁(Mutex)、读写锁(Read-Write Lock)、信号量(Semaphore)和条件变量(Wait Conditions)。这些机制用于处理多线程编程中的数据一致性和线程…...

Caffeine+Redis两级缓存架构

CaffeineRedis两级缓存架构 在高性能的服务项目中&#xff0c;我们一般会将一些热点数据存储到 Redis这类缓存中间件中&#xff0c;只有当缓存的访问没有命中时再查询数据库。在提升访问速度的同时&#xff0c;也能降低数据库的压力。 但是在一些场景下单纯使用 Redis 的分布…...

kafka和zookeeper单机部署

安装kafka需要jdk和zookeeper环境&#xff0c;因此先部署单机zk的测试环境。 zookeeper离线安装 下载地址&#xff1a; zookeeper下载地址&#xff1a;Index of /dist/zookeeper 这里下载安装 zookeeper-3.4.6.tar.gz 版本&#xff0c;测试环境单机部署 上传服务器后解压缩 …...

别了,公有云!下云迁移真的是大趋势么?

【科技明说 &#xff5c; 科技热点关注】 不知道你们还有没有印象&#xff0c;早在2022年&#xff0c;IBM发布了《IBM 企业转型指数&#xff1a;云现状》中也反映了这一趋势&#xff1a;80%的企业已经考虑或正在考虑将已经部署到公有云上的工作负载迁回私有的基础设施。 然而&…...

网关在不同行业自动化生产线的应用

网关在不同行业自动化生产线的应用&#xff0c;展示了其作为信息与物理世界交汇点的广泛影响力&#xff0c;尤其在推动行业智能化、自动化方面发挥了不可估量的作用。以下是网关技术在污水处理、智慧农业、智慧工厂、电力改造及自动化控制等领域的深入应用剖析。 1. 污水处理 …...

C++ socket编程(1)

这里是一个socket编程Demo&#xff0c;不考虑出错情况&#xff0c;代码简单&#xff0c;便于了解socket流程。 Demo分为服务器程序和客户端程序&#xff0c;运行需要先启动服务器程序&#xff0c;再启动客户端程序。 服务器会等待连接&#xff0c;客户端连接后&#xff0c;服…...

C# 文件夹类的实现与文件属性处理

在现代软件开发中&#xff0c;处理文件和文件夹是非常常见的任务。 C# 提供了丰富的类库来操作这些文件系统的基本元素。本篇文章将探讨如何在 C# 中实现一个简单的文件夹类&#xff0c;以及如何获取文件名、文件路径、大小和创建日期等文件属性。 一、使用 System.IO 命…...

[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?

&#x1f9e0; 智能合约中的数据是如何在区块链中保持一致的&#xff1f; 为什么所有区块链节点都能得出相同结果&#xff1f;合约调用这么复杂&#xff0c;状态真能保持一致吗&#xff1f;本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里&#xf…...

CTF show Web 红包题第六弹

提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框&#xff0c;很难让人不联想到SQL注入&#xff0c;但提示都说了不是SQL注入&#xff0c;所以就不往这方面想了 ​ 先查看一下网页源码&#xff0c;发现一段JavaScript代码&#xff0c;有一个关键类ctfs…...

DAY 47

三、通道注意力 3.1 通道注意力的定义 # 新增&#xff1a;通道注意力模块&#xff08;SE模块&#xff09; class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...

IT供电系统绝缘监测及故障定位解决方案

随着新能源的快速发展&#xff0c;光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域&#xff0c;IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选&#xff0c;但在长期运行中&#xff0c;例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

Redis数据倾斜问题解决

Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中&#xff0c;部分节点存储的数据量或访问量远高于其他节点&#xff0c;导致这些节点负载过高&#xff0c;影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...

论文笔记——相干体技术在裂缝预测中的应用研究

目录 相关地震知识补充地震数据的认识地震几何属性 相干体算法定义基本原理第一代相干体技术&#xff1a;基于互相关的相干体技术&#xff08;Correlation&#xff09;第二代相干体技术&#xff1a;基于相似的相干体技术&#xff08;Semblance&#xff09;基于多道相似的相干体…...

Linux 中如何提取压缩文件 ?

Linux 是一种流行的开源操作系统&#xff0c;它提供了许多工具来管理、压缩和解压缩文件。压缩文件有助于节省存储空间&#xff0c;使数据传输更快。本指南将向您展示如何在 Linux 中提取不同类型的压缩文件。 1. Unpacking ZIP Files ZIP 文件是非常常见的&#xff0c;要在 …...

嵌入式常见 CPU 架构

架构类型架构厂商芯片厂商典型芯片特点与应用场景PICRISC (8/16 位)MicrochipMicrochipPIC16F877A、PIC18F4550简化指令集&#xff0c;单周期执行&#xff1b;低功耗、CIP 独立外设&#xff1b;用于家电、小电机控制、安防面板等嵌入式场景8051CISC (8 位)Intel&#xff08;原始…...

【LeetCode】算法详解#6 ---除自身以外数组的乘积

1.题目介绍 给定一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O…...

写一个shell脚本,把局域网内,把能ping通的IP和不能ping通的IP分类,并保存到两个文本文件里

写一个shell脚本&#xff0c;把局域网内&#xff0c;把能ping通的IP和不能ping通的IP分类&#xff0c;并保存到两个文本文件里 脚本1 #!/bin/bash #定义变量 ip10.1.1 #循环去ping主机的IP for ((i1;i<10;i)) doping -c1 $ip.$i &>/dev/null[ $? -eq 0 ] &&am…...