Describe the nested-loop join and block-nested loop join. 
 Ans:   The block nested- loop join algorithm is as described below:   
 for every block Br of relation R do begin       
   for every block Bs of  relation S do begin    
    for every tuple tr in Br do begin    
     for every tuple ts in Bs do begin   
      test pair (tr,ts) to see if they satisfy the join  
     condition                                      
        if they do, add tr.ts to the result  
     end
    end
   end
 end          
  The nested-loop from algorithm is like this: 
  for every tuple tr in relation R do begin
                for every tuple ts in relation S do begin
   test pair (tr,ts) to see if they satisfy the join condition   
    if they do, add tr.ts to the result
                     end
      end