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.两表已按照连接字段排序或排序成本较低

posted on 2014-01-14 23:21  笑东风  阅读(310)  评论(0编辑  收藏  举报

导航