Thread: foreign key is it a real key
Hi, I have read a few articles and I'm not sure if it's me or the authors but I do not believe my question was answered. If I have table that has a PK and a FK - will the planner use the FK just same as it would use the PK? IOW's is a FK also an index used by the planner? I have a lagacy table that contains a FK constraint (vendor_id --> vendor_info). I believe I need an index to improve the performance of a query because I'm using the column as part of my join. Explain does not appear to use it as an index (instead of a seq scan it uses a hash join). But the table all ready has a FK key contraint on the column. Thanks in advance, Johnf
John Fabiani <johnf@jfcomputer.com> wrote: > Hi, > I have read a few articles and I'm not sure if it's me or the authors but I do > not believe my question was answered. > > If I have table that has a PK and a FK - will the planner use the FK just same > as it would use the PK? IOW's is a FK also an index used by the planner? > > I have a lagacy table that contains a FK constraint (vendor_id --> > vendor_info). I believe I need an index to improve the performance of a query > because I'm using the column as part of my join. Explain does not appear to > use it as an index (instead of a seq scan it uses a hash join). But the table > all ready has a FK key contraint on the column. Yes, for large tables you have to create a own index on your fk-column. Andreas -- Really, I'm not out to destroy Microsoft. That will just be a completely unintentional side effect. (Linus Torvalds) "If I was god, I would recompile penguin with --enable-fly." (unknown) Kaufbach, Saxony, Germany, Europe. N 51.05082°, E 13.56889°
On Monday, February 13, 2012 04:50:47 PM Andreas Kretschmer wrote: > John Fabiani <johnf@jfcomputer.com> wrote: > > Hi, > > I have read a few articles and I'm not sure if it's me or the authors > > but I do not believe my question was answered. > > > > If I have table that has a PK and a FK - will the planner use the FK > > just same as it would use the PK? IOW's is a FK also an index used by > > the planner? > > > > I have a lagacy table that contains a FK constraint (vendor_id --> > > vendor_info). I believe I need an index to improve the performance of a > > query because I'm using the column as part of my join. Explain does > > not appear to use it as an index (instead of a seq scan it uses a hash > > join). But the table all ready has a FK key contraint on the column. > > Yes, for large tables you have to create a own index on your fk-column. > > > Andreas Thanks Johnf