MySQL
文章平均质量分 53
Emma小杨呀
向着优秀的数据工程师努力!
展开
-
MySQL背后的故事(五)
总结: 窗口函数rows可指定范围详情: 当你用OVER()子句进行你的分析计算来打开你的窗口,你也可以在窗口里看到的,通过ROWS与RANGE选项来限制你的行数。下面分析rows与range窗口子句的用法,frame_extent指定帧的起止点,在其中也可以只用frame_start(结束位置就默认为当前行)和frame_between指定起点和终点frame_start和frame_end可以是以下几种:CURRENT ROW: 当前行UNBOUNDED PRECEDING: 区间的第一行原创 2021-06-04 12:19:17 · 191 阅读 · 2 评论 -
MySql背后的故事(四)
https://leetcode-cn.com/problems/consecutive-available-seats/题目:几个朋友来到电影院的售票处,准备预约连续空余座位。你能利用表 cinema ,帮他们写一个查询语句,获取所有空余座位,并将它们按照 seat_id 排序后返回吗?seat_idfree1120314151对于如上样例,你的查询语句应该返回如下结果。seat_id345注意:s原创 2021-05-17 22:36:08 · 191 阅读 · 0 评论 -
MySQL背后的故事(三)
最近刷SQL题,发现好多有点难度的题都是围绕着分组的组内排名来出题的。这里记录一下聚合函数的一个隐藏的用法;题目:请你写出一个sql语句查询在2025-10-15以后,如果有一个用户下单2个以及2个以上状态为购买成功的C++课程或Java课程或Python课程,那么输出这个用户的user_id,以及满足前面条件的第一次购买成功的C++课程或Java课程或Python课程的日期first_buy_date,以及满足前面条件的第二次购买成功的C++课程或Java课程或Python课程的日期second_b原创 2021-04-20 17:37:24 · 179 阅读 · 0 评论 -
MySql背后的故事(二)
讨论主题:变量的操作在SQL语句中的执行顺序和执行过程是怎么样的我的猜测:order by完了以后再执行变量的操作证据: 查询表中grades的排名情况:第一种情况:加入order by grades后,则从小到大扫描并排名第二种情况:不加入order by,会将就表中的原始记录进行扫描,并从上到下进行排序...原创 2021-04-16 17:16:18 · 117 阅读 · 0 评论 -
MySQL背后的故事(一)
group by的实现机制,参照下面这位博主写的(很优秀):链接:很好理解的group by抽象的实现机制总结一下:简单来讲group by会自动先排序,然后再分组默认取非聚合的第一条记录聚合函数是专门对付每个组内的数据计算(或统计)的...原创 2021-04-15 12:03:30 · 256 阅读 · 0 评论