4.2.3 JOIN 算法策略 在数据库系统的世界里,JOIN 不是语法糖,不是 SQL 编译器里一个优雅的抽象符号,而是一场精密的、毫秒级的资源调度战争——它决定着内存是否溢出、磁盘是否尖叫、CPU 是否在空转中窒息,更决定着你的 OLAP 查询是 200ms 返回结果,还是在用户刷新页面的第三秒后才吐出第一行数据。 你写下的 ,看似轻描淡写;但背后,查询优化器正以纳秒为单位,在三种经典算法之间反复权衡:嵌套循环(Nested Loop)、哈希连接(Hash Join)与排序合并(Sort-Merge Join)。这不是“选一个就行”的选择题,而是对数据分布、内存预算、谓词选择率、索引可用性、并发负载乃至硬件缓存行对齐方式的全栈式推演。