TSQL--SORT MERGE JOIN
算法:对两表排序,然后对两表依次扫描,找到符合条件的结果集
sort(T1);
seort(T2);
int k=0;--for T1 index
int m=0;--for T2 index
while(true)
{
if(T1[k] match T2[m])
{
output (T1[k],T2[m]);
m++;
}
if(T1[k] less than T2[m])
{
k++
}
if(T1[k] great than T2[m])
{
m++
}
if(k==T1.counts || m==T2.counts)
{
break;
}
}
算法复杂度:outerTable.rowsCount+innerTable.rowsCount
要求:
1.两表已按照连接字段排序或排序成本较低
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步