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

专业网站优化服务网站建设远程教育大学论文

专业网站优化服务,网站建设远程教育大学论文,二级备案域名,照片管理网站模板下载也在牛客力扣写了一百来题了#xff0c;个人感觉力扣的SQL题要比牛客的高三档的难度。#xff08;普遍来说#xff09; 1. 牛客SQL热题216#xff1a;统计各个部门的工资记录数 1.1 题目#xff1a; 描述 有一个部门表departments简况如下: dept_nodept_named001Marke… 也在牛客力扣写了一百来题了个人感觉力扣的SQL题要比牛客的高三档的难度。普遍来说 1. 牛客SQL热题216统计各个部门的工资记录数 1.1 题目 描述 有一个部门表departments简况如下: dept_nodept_named001Marketingd002Finance 有一个部门员工关系表dept_emp简况如下: emp_nodept_no from_date to_date10001d0012001-06-229999-01-0110002d0011996-08-039999-01-0110003d0021996-08-039999-01-01 有一个薪水表salaries简况如下: emp_no salaryfrom_date to_date10001850972001-06-222002-06-2210001889582002-06-229999-01-0110002725271996-08-039999-01-0110003323231996-08-039999-01-01 请你统计各个部门的工资记录数给出部门编码dept_no、部门名称dept_name以及部门在salaries表里面有多少条记录sum按照dept_no升序排序以上例子输出如下: dept_nodept_namesumd001Marketing3d002Finance1 示例1 输入drop table if exists departments ; drop table if exists dept_emp ; drop table if exists salaries ; CREATE TABLE departments ( dept_no char(4) NOT NULL, dept_name varchar(40) NOT NULL, PRIMARY KEY (dept_no)); CREATE TABLE dept_emp ( emp_no int(11) NOT NULL, dept_no char(4) NOT NULL, from_date date NOT NULL, to_date date NOT NULL, PRIMARY KEY (emp_no,dept_no)); CREATE TABLE salaries ( emp_no int(11) NOT NULL, salary int(11) NOT NULL, from_date date NOT NULL, to_date date NOT NULL, PRIMARY KEY (emp_no,from_date)); INSERT INTO departments VALUES(d001,Marketing); INSERT INTO departments VALUES(d002,Finance); INSERT INTO dept_emp VALUES(10001,d001,2001-06-22,9999-01-01); INSERT INTO dept_emp VALUES(10002,d001,1996-08-03,9999-01-01); INSERT INTO dept_emp VALUES(10003,d002,1996-08-03,9999-01-01); INSERT INTO salaries VALUES(10001,85097,2001-06-22,2002-06-22); INSERT INTO salaries VALUES(10001,88958,2002-06-22,9999-01-01); INSERT INTO salaries VALUES(10002,72527,1996-08-03,9999-01-01); INSERT INTO salaries VALUES(10003,32323,1996-08-03,9999-01-01); 复制输出d001|Marketing|3 d002|Finance|1 1.2 思路 两个join连接。 1.3 题解 select t1.dept_no, dept_name, count(*) sum from dept_emp t1 join salaries t2 on t1.emp_no t2.emp_no join departments t3 on t1.dept_no t3.dept_no group by t1.dept_no order by dept_no 2. 牛客SQL热题217对所有员工的薪水按照salary降序进行1-N的排名 2.1 题目 描述 有一个薪水表salaries简况如下: emp_nosalaryfrom_dateto_date10001889582002-06-229999-01-0110002725272001-08-029999-01-0110003433112001-12-019999-01-0110004725272001-12-019999-01-01 对所有员工的薪水按照salary降序先进行1-N的排名如果salary相同再按照emp_no升序排列 emp_nosalaryt_rank10001889581100027252721000472527210003433113 示例1 输入drop table if exists salaries ; CREATE TABLE salaries ( emp_no int(11) NOT NULL, salary int(11) NOT NULL, from_date date NOT NULL, to_date date NOT NULL, PRIMARY KEY (emp_no,from_date)); INSERT INTO salaries VALUES(10001,88958,2002-06-22,9999-01-01); INSERT INTO salaries VALUES(10002,72527,2001-08-02,9999-01-01); INSERT INTO salaries VALUES(10003,43311,2001-12-01,9999-01-01); INSERT INTO salaries VALUES(10004,72527,2001-12-01,9999-01-01); 复制输出10001|88958|1 10002|72527|2 10004|72527|2 10003|43311|3 2.2 思路 这不一眼窗口函数么。 2.3 题解 -- 一眼窗口函数太明显了。 select emp_no, salary, dense_rank() over (order by salary desc) ranks from salaries order by salary desc, emp_no 3. 牛客SQL热题223使用join查询方式找出没有分类的电影id以及名称 3.1 题目 描述 现有电影信息表film包含以下字段 字段说明film_id电影idtitle电影名称description电影描述信息 有类别表category包含以下字段 字段说明category_id电影分类idname电影分类名称last_update电影分类最后更新时间 电影分类表film_category包含以下字段 字段说明film_id电影idcategory_id电影分类idlast_update电影id和分类id对应关系的最后更新时间 使用join查询方式找出没有分类的电影id以及其电影名称。 示例1 输入drop table if exists film ; drop table if exists category ; drop table if exists film_category ; CREATE TABLE IF NOT EXISTS film (film_id smallint(5) NOT NULL DEFAULT 0,title varchar(255) NOT NULL,description text,PRIMARY KEY (film_id)); CREATE TABLE category (category_id tinyint(3) NOT NULL ,name varchar(25) NOT NULL, last_update timestamp,PRIMARY KEY ( category_id )); CREATE TABLE film_category (film_id smallint(5) NOT NULL,category_id tinyint(3) NOT NULL, last_update timestamp); INSERT INTO film VALUES(1,ACADEMY DINOSAUR,A Epic Drama of a Feminist And a Mad Scientist who must Battle a Teacher in The Canadian Rockies); INSERT INTO film VALUES(2,ACE GOLDFINGER,A Astounding Epistle of a Database Administrator And a Explorer who must Find a Car in Ancient China); INSERT INTO film VALUES(3,ADAPTATION HOLES,A Astounding Reflection of a Lumberjack And a Car who must Sink a Lumberjack in A Baloon Factory);INSERT INTO category VALUES(1,Action,2006-02-14 20:46:27); INSERT INTO category VALUES(2,Animation,2006-02-14 20:46:27); INSERT INTO category VALUES(3,Children,2006-02-14 20:46:27); INSERT INTO category VALUES(4,Classics,2006-02-14 20:46:27); INSERT INTO category VALUES(5,Comedy,2006-02-14 20:46:27); INSERT INTO category VALUES(6,Documentary,2006-02-14 20:46:27); INSERT INTO category VALUES(7,Drama,2006-02-14 20:46:27); INSERT INTO category VALUES(8,Family,2006-02-14 20:46:27); INSERT INTO category VALUES(9,Foreign,2006-02-14 20:46:27); INSERT INTO category VALUES(10,Games,2006-02-14 20:46:27); INSERT INTO category VALUES(11,Horror,2006-02-14 20:46:27);INSERT INTO film_category VALUES(1,6,2006-02-14 21:07:09); INSERT INTO film_category VALUES(2,11,2006-02-14 21:07:09); 复制输出3|ADAPTATION HOLES 3.2 思路 左外连接即可。 3.3 题解 -- 第二张表是蒙人的吧。。。 -- 这不就简单的左外连接吗 select t1.film_id, title from film t1 left join film_category t2 on t1.film_id t2.film_id where category_id is null 4. 牛客大厂笔试真题W2最长连续登录天数 4.1 题目 描述 你正在搭建一个用户活跃度的画像其中一个与活跃度相关的特征是“最长连续登录天数” 请用SQL实现“2023年1月1日-2023年1月31日用户最长的连续登录天数” 示例1 输入drop table if exists tb_dau; create table tb_dau (fdate date,user_id int ); insert into tb_dau(fdate, user_id) values (2023-01-01, 10000), (2023-01-02, 10000), (2023-01-04, 10000); 复制输出user_id|max_consec_days 10000|2 复制说明id为10000的用户在1月1日及1月2日连续登录2日1月4日登录1日故最长连续登录天数为2日备注示例如用户在1月3日-1月10日登录且在1月20日-1月22日登录则最长连续登录天数为8MySQL中日期加减的函数日期增加 DATE_ADD例date_add(2023-01-01, interval 1 day) 输出 2023-01-02 日期减少 DATE_SUB例date_add(2023-01-01, interval 1 day) 输出 2022-12-31日期差 DATEDIFF例datediff(2023-02-01, 2023-01-01) 输出31 4.2 思路 一句话两个记录的日期的差值如果等于两记录的排名差值说明中间一直是连续的。 4.3 题解 -- 先给每条记录以排名 with tep1 as (select fdate, user_id, rank() over (partition by user_id order by fdate) ranksfrom tb_dau ), tep2 as (-- 整体是自连接的思想-- on限制user_id相同且diff必须是0或正数-- 最重要的条件是两个记录的日期的差值要等于两记录的排名差值select t1.user_id, datediff(t2.fdate, t1.fdate)1 daysfrom tep1 t1join tep1 t2on t1.user_id t2.user_id and t2.fdate t1.fdate andt2.ranks datediff(t2.fdate, t1.fdate) t1.ranks )select user_id, max(days) max_consec_days from tep2 group by user_id 5. 力扣mid题550游戏玩法分析4 5.1 题目 Table: Activity ----------------------- | Column Name | Type | ----------------------- | player_id | int | | device_id | int | | event_date | date | | games_played | int | ----------------------- player_idevent_date是此表的主键具有唯一值的列的组合。 这张表显示了某些游戏的玩家的活动情况。 每一行是一个玩家的记录他在某一天使用某个设备注销之前登录并玩了很多游戏可能是 0。编写解决方案报告在首次登录的第二天再次登录的玩家的 比率四舍五入到小数点后两位。换句话说你需要计算从首次登录日期开始至少连续两天登录的玩家的数量然后除以玩家总数。 结果格式如下所示 示例 1 输入 Activity table: ------------------------------------------------ | player_id | device_id | event_date | games_played | ------------------------------------------------ | 1 | 2 | 2016-03-01 | 5 | | 1 | 2 | 2016-03-02 | 6 | | 2 | 3 | 2017-06-25 | 1 | | 3 | 1 | 2016-03-02 | 0 | | 3 | 4 | 2018-07-03 | 5 | ------------------------------------------------ 输出 ----------- | fraction | ----------- | 0.33 | ----------- 解释 只有 ID 为 1 的玩家在第一天登录后才重新登录所以答案是 1/3 0.33 5.2 思路 窗口函数给出排名再进行简单的计算即可。 5.3 题解 -- 先给每个人排名 with tep1 as (select player_id , event_date , dense_rank() over (partition by player_id order by event_date) ranksfrom Activity ) -- 然后在tep1表中将ranks为2的记录与ranks为1的记录的个数想除 -- ranks为1的记录即第一次登录的玩家ranks为2且与第一次登录的天数相-- 差为1的记录是首次登录第二天再次登录的玩家 select round((select count(*) from tep1 t1 where ranks 2 and datediff(event_date , (select event_date from tep1 t2 where ranks 1 and t1.player_id t2.player_id)) 1) / (select count(*) from tep1 where ranks 1), 2) fraction from dual
http://www.w-s-a.com/news/442921/

相关文章:

  • 做网站的不给ftp网站如何做触屏滑动
  • wordpress statraq重庆百度优化
  • 企业网站官网英文WordPress站点切换为中文
  • 服装公司网站定位一点号自媒体平台
  • 密云微网站建设汽车之家手机官网首页
  • 多语言外贸网站制作苏州建设网站微信公众号
  • 用wordpress建站学什么百度给企业做网站吗
  • 福建城乡建设网站做数码测评的网站
  • 东海县建设局网站wordpress 好用的主题
  • 网站图片设计制作制作一个门户网站需要多少钱
  • 虚拟币交易网站源码自己给网站做支付接口
  • 免费的seo网站在线 crm
  • 绍兴市高速公路建设指挥部网站网站主页和子页风格如何统一
  • 获取网站状态网站租金可以做办公费吗
  • 网站开发执行什么标准号wordpress主题 表白
  • 杭州网站推广与优化凡科网是免费的吗
  • 公司网站的重要性门户网站推广介绍方案
  • 做金融网站看那些素材江门网红打卡景点蓬江区
  • 饮食网站模板建网站中企动力优
  • 郑州 制造 网站东平企业建站公司
  • 天津设计师网站大全展示型网站搭建
  • 南宁网站建设 传导网站开发平台开发公司
  • 网站建设好处上海建设工程网站
  • 黑河哈尔滨网站建设太原网站制作定制开发
  • 建站做网站香河住房与建设局网站
  • 如何制造一个网站域名分类网站
  • 解析视频的网站怎么做凡科网快图
  • 企业网站优化问题接单app平台有哪些
  • 怎么做网站后缀识别符号才不会变什么是电子商务网站建设
  • 中山 五金 骏域网站建设专家专门用来制作网页的软件是什么