Creating a foreign key doesn't automatically create an index on the child
table (Columns on parent table are always indexed).
But usually, foreign key columns should be indexed to increase performance.
Because those columns usually appear in WHERE clauses in join queries like
"select * from parent, child where child.id = parent.id;"
Moreover, such indexes speed up cascade deletes.
> Should foreign keys usually be indexed?
> If a table has its own unique id and a non-unique foreign key which is
> always used to select from the table, will an index automatically
> speed it up? Is it automatically indexed being it is a foreign key?