Juan Ramirez escribió: > cual tiene más performance, yo estoy acostumbrado cuando hago > relaciones entre tablas a utilizar "exists" en lugar de los join.
Depende de cada caso particular. Y hay que tener muy en cuenta que a veces IN es muy rapido, en cambio NOT IN es muy lento; y ahi donde EXISTS pueda ser muy rapido, NOT EXISTS puede ser muy lento y viceversa. Y en todos los casos hay que tener mucho cuidado con la forma en que se resuelven los valores NULL, porque a veces es contraintuitiva. También depende de las versiones de Postgres, porque a medida que el optimizador aprende trucos nuevos, las cosas que antes eran lentas puede que dejen de serlo, y pasar a ser más rápidas que las formas que antes eran la mejor alternativa. -- Alvaro Herrera http://www.amazon.com/gp/registry/DXLWNGRJD34J "El sabio habla porque tiene algo que decir; el tonto, porque tiene que decir algo" (Platon). -- TIP 7: no olvides aumentar la configuración del "free space map"