作者回复: 重新整理表这个思路很赞👍🏿
看得出你是业务经验很丰富啊,这几次问题,对底层实现和业务功能的平衡,考虑点很不错
作者回复: 这个也是个好方法,就是确保连续,可以快速的得到C和几个偏移量
作者回复: 抓住了关键点👍🏿
作者回复: 👍🏿
作者回复: 对的,
你是第一个回答正文中间问题的😄👍🏿
作者回复: 漂亮
作者回复: 嗯嗯,MySQL 的代码和业务代码都是代码😄 配合起来用
作者回复: 帮你贴下你自己的答案哈 https://mengkang.net/1338.html
作者回复: 开两个窗口,按顺序执行命令哦
作者回复: 要说算法还是隔壁王老师讲的专业,这里咱们就只追求MySQL 里面用到的,能给大家讲明白就行了😄
作者回复: 查询需要临时表,比如我们这个例子里,需要临时表来放rand()结果
作者回复: 我的理解是说,
你碰到了这种情况:
limit n, a; 显示a条记录;
然后 limit n+a, a显示第二组a条件记录;
这两组a个记录出现了重复数据对吧,
是的,是因为limit 有可能出现两种算法,比如直接排序和优先队列排序,就是不同的结果。
而limit 后面的参数,是会影响算法的
作者回复: 没有少0哈
好问题
最小堆的维护代价比数组大,不只是14*1000哦
作者回复: 前提是有limit 子句哈
作者回复: mysql的执行过程都是由执行器来调度的
不论创建memory临时表还是innodb临时表,都是执行器调用引擎的创建表接口实现的
写数据和读数据也是
排序这个操作,是在server层做的
作者回复: 都在内存的话就用快排
需要用到文件的话,有用到合并排序
作者回复: 加油慢慢来哈~~😆