随笔分类 -  MySQL

1 2 3 下一页
MySQL窗口函数介绍详情
摘要:一、窗口函数基本点 (一)定义 窗口的概念非常重要,它可以理解为记录集合,窗口函数也就是在满足某种条件的记录集 合上执行的特殊函数。对于每条记录都要在此窗口内执行函数,窗口大小都是固定的,这种属于静态窗口;不同的记录对应着不同的窗口,这种动态变化的窗口叫滑动窗口。 (二)基本用法 函数名([expr 阅读全文
posted @ 2022-12-05 17:54 桌子哥 阅读(625) 评论(0) 推荐(0) 编辑
桌子哥的MySQL总结
摘要:MySQL作为常用的企业级的数据库,有着非常丰富的使用场景。 一、3NF设计 1)对于MySQL这样的关系型数据库,在进行设计表的时候需要考虑3NF的设计。NF是范式,范式是指对表的拆分。 对于1NF:即表的列具有原子性,不可再分解,即列的信息,不能分解,只要数据库是关系型数据库就自动满足1NF。 阅读全文
posted @ 2022-02-16 21:40 桌子哥 阅读(107) 评论(0) 推荐(0) 编辑
SQL真题实战(大厂真题)——来自牛客题霸
摘要:对于大厂真题的部分,需要对题目进行很好的理解,这些来源与实际项目相近的题目才是最锻炼思维能力和编程技巧的。 Part1:某音短视频 SQL1 各个视频的平均完播率 级别:简单 题目: 用户-视频互动表tb_user_video_log (uid-用户ID, video_id-视频ID, start_ 阅读全文
posted @ 2021-12-27 17:35 桌子哥 阅读(2395) 评论(0) 推荐(0) 编辑
SQL练习题(76-91)学习笔记(来源于牛客网)
摘要:最近看到牛客的MySQL更新了,做了几道从后数的,和大家分享下。 SQL76 考试分数(五) 描述 牛客每次考试完,都会有一个成绩表(grade),如下: 第1行表示用户id为1的用户选择了C++岗位并且考了11001分 。。。 第8行表示用户id为8的用户选择了B语言岗位并且考了9999分 请你写 阅读全文
posted @ 2021-08-18 22:43 桌子哥 阅读(414) 评论(0) 推荐(0) 编辑
SQL窗口函数的用法总结
摘要:一.窗口函数有什么用?在日常工作中,经常会遇到需要在每组内排名,比如下面的业务需求: 排名问题:每个部门按业绩来排名topN问题:找出每个部门排名前N的员工进行奖励 面对这类需求,就需要使用sql的高级功能窗口函数了。 二.什么是窗口函数? 窗口函数,也叫OLAP函数(Online Anallyti 阅读全文
posted @ 2021-03-12 11:25 桌子哥 阅读(2068) 评论(0) 推荐(0) 编辑
Leetcode之MySQL练习题
摘要:写在前面: 最近的工作涉及到SQL比较多,前一段时间做了牛客的SQL练习题,从今天开始来做一下LeetCode上的SQL练习题。为自己之后的理想职业数据分析师来做一些基础的提高。 题目1:难度:简单 表1: Person+ + +| 列名 | 类型 |+ + +| PersonId | int || 阅读全文
posted @ 2020-11-14 22:42 桌子哥 阅读(493) 评论(0) 推荐(1) 编辑
SQL练习题(1-76)学习笔记(来源于牛客网)
摘要:因为最近的工作需要写一些SQL,但是之前只学过,没有实地的编过SQL。 在工作中是需要用Hive来写,本地没有环境,所以在牛客网上来进行练习。 本次内容全部来源于牛客网,使用的是SQLite。 第1题: 题目: 查找最晚入职员工的所有信息,为了减轻入门难度,目前所有的数据里员工入职的日期都不是同一天 阅读全文
posted @ 2020-11-01 22:23 桌子哥 阅读(376) 评论(0) 推荐(0) 编辑
SQL练习题47:将employees表中的所有员工的last_name和first_name通过(')连接起来
摘要:题目: 将employees表中的所有员工的last_name和first_name通过(')连接起来。(不支持concat,请用||实现) CREATE TABLE `employees` ( `emp_no` int(11) NOT NULL, `birth_date` date NOT NUL 阅读全文
posted @ 2020-11-01 17:29 桌子哥 阅读(347) 评论(0) 推荐(0) 编辑
SQL练习题46:牛客每次考试完,都会有一个成绩表(grade),请你写一个sql语句查询各个岗位分数升序排列之后的中位数位置的范围,并且按job升序排序
摘要:题目: 牛客每次考试完,都会有一个成绩表(grade),如下: 第1行表示用户id为1的用户选择了C++岗位并且考了11001分 。。。 第8行表示用户id为8的用户选择了前端岗位并且考了9999分 请你写一个sql语句查询各个岗位分数升序排列之后的中位数位置的范围,并且按job升序排序,结果如下: 阅读全文
posted @ 2020-11-01 17:20 桌子哥 阅读(943) 评论(0) 推荐(0) 编辑
SQL练习题45:
摘要:题目: 牛客每次举办企业笔试的时候,企业一般都会有不同的语言岗位,比如C++工程师,JAVA工程师,Python工程师,每个用户笔试完有不同的分数,现在有一个分数(grade)表简化如下: 第1行表示用户id为1的选择了language_id为1岗位的最后考试完的分数为12000, .... 第7行 阅读全文
posted @ 2020-11-01 13:47 桌子哥 阅读(191) 评论(0) 推荐(0) 编辑
SQL练习题44:牛客每天有很多人登录,请你统计一下牛客每个日期新用户的次日留存率。
摘要:题目: 牛客每天有很多人登录,请你统计一下牛客每个日期新用户的次日留存率。 有一个登录(login)记录表,简况如下: 第1行表示id为2的用户在2020-10-12使用了客户端id为1的设备登录了牛客网,因为是第1次登录,所以是新用户 。。。 第4行表示id为2的用户在2020-10-13使用了客 阅读全文
posted @ 2020-11-01 13:09 桌子哥 阅读(1337) 评论(0) 推荐(0) 编辑
SQL练习题43:牛客每天有很多人登录,请你统计一下牛客每个用户查询刷题信息,包括: 用户的名字,以及截止到某天,累计总共通过了多少题。 不存在没有登录却刷题的情况,但是存在登录了没刷题的情况,不会存在刷题表里面,有提交代码没有通过的情况,但是会记录在刷题表里,只不过通过数目是0。
摘要:题目: 牛客每天有很多人登录,请你统计一下牛客每个用户查询刷题信息,包括: 用户的名字,以及截止到某天,累计总共通过了多少题。 不存在没有登录却刷题的情况,但是存在登录了没刷题的情况,不会存在刷题表里面,有提交代码没有通过的情况,但是会记录在刷题表里,只不过通过数目是0。 有一个登录(login)记 阅读全文
posted @ 2020-11-01 12:52 桌子哥 阅读(448) 评论(0) 推荐(0) 编辑
SQL练习题42:牛客每天有很多人登录,请你统计一下牛客每个日期登录新用户个数
摘要:题目: 牛客每天有很多人登录,请你统计一下牛客每个日期登录新用户个数, 有一个登录(login)记录表,简况如下: 第1行表示id为2的用户在2020-10-12使用了客户端id为1的设备登录了牛客网,因为是第1次登录,所以是新用户 。。。 第4行表示id为2的用户在2020-10-13使用了客户端 阅读全文
posted @ 2020-11-01 11:43 桌子哥 阅读(918) 评论(0) 推荐(0) 编辑
SQL练习题41:牛客每天有很多人登录,请你统计一下牛客新登录用户的次日成功的留存率
摘要:题目:(具体题目细节去看牛客,不能插入图片) 牛客每天有很多人登录,请你统计一下牛客新登录用户的次日成功的留存率, 有一个登录(login)记录表,简况如下: 第1行表示id为2的用户在2020-10-12使用了客户端id为1的设备第一次新登录了牛客网 。。。 第4行表示id为3的用户在2020-1 阅读全文
posted @ 2020-11-01 10:46 桌子哥 阅读(804) 评论(0) 推荐(0) 编辑
SQL练习题40:现在有一个需求,让你统计正常用户发送给正常用户邮件失败的概率
摘要:题目:(浏览器不支持插图???详情去牛客网上看看) 现在有一个需求,让你统计正常用户发送给正常用户邮件失败的概率: 有一个邮件(email)表,id为主键, type是枚举类型,枚举成员为(completed,no_completed),completed代表邮件发送是成功的,no_complete 阅读全文
posted @ 2020-11-01 09:56 桌子哥 阅读(222) 评论(0) 推荐(0) 编辑
SQL练习题39:将所有to_date为9999-01-01的全部更新为NULL,且 from_date更新为2001-01-01。
摘要:题目: 将所有to_date为9999-01-01的全部更新为NULL,且 from_date更新为2001-01-01。 CREATE TABLE IF NOT EXISTS titles_test ( id int(11) not null primary key, emp_no int(11) 阅读全文
posted @ 2020-10-15 14:16 桌子哥 阅读(144) 评论(0) 推荐(0) 编辑
SQL练习题38:删除emp_no重复的记录,只保留最小的id对应的记录。
摘要:题目: 删除emp_no重复的记录,只保留最小的id对应的记录。 CREATE TABLE IF NOT EXISTS titles_test ( id int(11) not null primary key, emp_no int(11) NOT NULL, title varchar(50) 阅读全文
posted @ 2020-10-15 14:15 桌子哥 阅读(144) 评论(0) 推荐(0) 编辑
SQL练习题37:构造一个触发器audit_log,在向employees表中插入一条数据的时候,触发插入相关的数据到audit中
摘要:题目: 构造一个触发器audit_log,在向employees_test表中插入一条数据的时候,触发插入相关的数据到audit中。 CREATE TABLE employees_test( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE I 阅读全文
posted @ 2020-10-15 14:00 桌子哥 阅读(604) 评论(0) 推荐(0) 编辑
SQL练习题36:现在在last_update后面新增加一列名字为create_date, 类型为datetime, NOT NULL,默认值为'0000-00-00 00:00:00'
摘要:题目: 存在actor表,包含如下列信息: CREATE TABLE IF NOT EXISTS actor ( actor_id smallint(5) NOT NULL PRIMARY KEY, first_name varchar(45) NOT NULL, last_name varchar 阅读全文
posted @ 2020-10-15 13:53 桌子哥 阅读(371) 评论(0) 推荐(0) 编辑
SQL练习题35:针对salaries表emp_no字段创建索引idx_emp_no,查询emp_no为10005, 使用强制索引。
摘要:题目: 针对salaries表emp_no字段创建索引idx_emp_no,查询emp_no为10005, 使用强制索引。 CREATE TABLE `salaries` ( `emp_no` int(11) NOT NULL, `salary` int(11) NOT NULL, `from_da 阅读全文
posted @ 2020-10-15 09:00 桌子哥 阅读(476) 评论(0) 推荐(0) 编辑

1 2 3 下一页