Robert Treat <[EMAIL PROTECTED]> writes:
> Sort  (cost=616.64..620.56 rows=1568 width=12) (actual time=46.579..54.641 
> rows=6407 loops=1)    
>       Sort Key: latest_download.host_id                                       
>                                                        
>               ->  Subquery Scan latest_download  (cost=498.14..533.42 
> rows=1568 width=12) (actual time=43.657..45.594 rows=472 loops=1)

> I am wondering why it would end up with a different number of rows after
> the sort operation.

The planner's estimate didn't change: 1568 at both steps.  The "actual"
is the number of rows actually pulled from the node at runtime, and the
discrepancy here occurs because this is the inner side of a mergejoin.
mergejoin has to rescan duplicate inner rows to join them to duplicate
outer rows.  It looks like you have a pretty fair number of
duplicates...

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 9: In versions below 8.0, the planner will ignore your desire to
       choose an index scan if your joining column's datatypes do not
       match

Reply via email to