msyql group by,窗口函数 和 直接循环查询性能分析

wmwmajie:个人对 mysql 底层源码没怎么研究,有一个问题比较好奇,咨询一下各位大佬。

就是比较常见的商品最新十条评论问题。

比如现在有十个商品,每个商品有 10 万条评论。

那么要取出这十个商品的前十条评论大概有以下几种方式:
1.通过 group by 或者 mysql8 的窗口函数分钟排序查询。
2.直接 循环十次
3.在商品表维护一个最新的十个评论的 id,然后直接查 id
4.我不知道的方式*_*

个人认为速度最快对数据库压力最小的肯定是 3,直接 id 查询。

主要就是疑惑第一种方式,这种方式应该是比较常用的,毕竟循环查询比较 low 。
但是这里有一个问题:group by 或者窗口函数都是需要对所有满足 where 条件的数据先进行一遍处理,在这个例子里面就是 100 万数据,这里是否会需要消耗相应的内存来存这 100 万数据的 id 或者标记?或者建立一个临时表?

方式 2 虽然代码循环了 10 次并查询了 10 次,这里肯定实在一个 mysql 连接里面不新建连接,但是总共需要处理的也就 100 行数据,那么 1 和 2 哪个对数据库的压力更小? 具体会查多少?
是否有大佬详细介绍一下?

Gmail 和 Outlook 相互伤害

ttgo:Outlook 的通知邮件(比如未读消息 /任务到期),转发到 Gmail 的话,全部会被拒收。 而从 Gmail 返回来的通知发送失败的那封邮件,Outlook 又会标记为垃圾邮件,不动声色的将其扔进垃圾箱。 真是尼玛,神仙打架、互相伤害。

itx 和 matx ,黑苹果的纠结

monkeydev:目前有一台 3950X + vega 64 的台式机,本来想买 iMac,感觉价格高了,所以想再买台 intel 家的电脑,既可以 win 压片,也可以黑苹果但是现在面临一个选择困难症2009 年读大学的时候,就像组套 itx,但一直没有,但是现成的有个 atx 的 evga 750 的电源,又不舍得放弃心水的乔斯伯 V8 又不支持 it…

电信 IPv4 和 IPv6 双栈限速不同

alect:安徽电信,双栈公网,签约宽带下行 300M/上行 30M经过测试,IPv4 和 IPv6 限速不同,IPv4 限速 300/30 (稳定 360/45 ),IPv6 限速 500/100,如果同时测试 IPv4 和 IPv6 速率,互相不会影响测速,v4 和 v6 流量叠加实测网卡下行最大可以跑到 900Mbps+实测网卡上行最大可以跑到 100…

mysql 获取某商品的前十条评论,不使用 group by 有什么好的方案吗?

wmwmajie:mysql 获取某商品的前十条评论,不使用 group by 有什么好的方案吗? 发现 gourp by 需要先分组在过滤出前 10 个,所有要处理的数据反而会很多。 有什么方式不用 group by 简洁高效吗?求指教xmumiffy:指定商品的评论,那不是 order 加 limit 就可以么,具体表结构是什么? daozhihun:只…

有几个关于 macOS 和 iOS 开发的问题,请教一下,谢谢了~

yousabuk:打算学习 macOS 和 iOS 开发(为发展副业),无所谓哪一年入国军等问题,请教几个问题:1,大家的开发者账号是专门为开发账号申请注册的 apple id 还是使用的平常使用的 apple id 啊?2,学习 macOS 和 iOS 有什么教程或者书籍推荐的?比如 swift,cocoa 详解啊什么的。