Buenos días, se que ya hubieron muchas preguntas al respecto pero este caso me llama la atención y los molesto consultando. Tengo la siguiente query: explain select * from nacer.historicotemp h inner join nacer.smiafiliados s on h.clavebeneficiario = s.clavebeneficiario;
Con siguiente resultado "Hash Join (cost=33335.39..1817942.71 rows=5692774 width=1002)" " Hash Cond: ((h.clavebeneficiario)::text = (s.clavebeneficiario)::text)" " -> Seq Scan on historicotemp h (cost=0.00..578624.74 rows=5692774 width=762)" " -> Hash (cost=15677.73..15677.73 rows=394773 width=240)" " -> Seq Scan on smiafiliados s (cost=0.00..15677.73 rows=394773 width=240)" Ambas tablas tienen indexada la columna clavebeneficiario y como ven ambas tablas creo que son lo suficientemente grande para la prueba. (La tabla h tiene mas de 5 millones de registros y la tabla s tiene unos 400 mil registros) Yo esperaba que al join lo haga utilizando índices, sin embargo veo que el planificador no lo usa, ¿Tienen idea por qué? Desde ya muchas gracias Guillermo Villanueva
