Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / foreign key & indexes / 3 сообщений из 3, страница 1 из 1
05.06.2006, 16:07
    #33772705
rosty
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
foreign key & indexes
Имеет ли смысл создавать индексы для полей, которые ссылаются на primary key других таблиц?

Например две таблицы:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
+--------------+
| country      |
+--------------+
| id           | <-- primary key
| name         |
+--------------+

и

+--------------+
| city         |
+--------------+
| id           | <-- primary key
| country_id   | <-- references on country(id)
| name         |
+--------------+

Стоит ли создавать индекc для country_id?
...
Рейтинг: 0 / 0
05.06.2006, 16:35
    #33772818
Ivan Evtuhovich
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
foreign key & indexes
Зависит от запросов в системе.

Если будут выборки вида
Код: plaintext
1.
select * from city where country_id =  1 
то лучше создать. А в общем случае это не имеет смысла, как мне думается.
...
Рейтинг: 0 / 0
05.06.2006, 16:48
    #33772867
victor_kr
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
foreign key & indexes
Думаю, что индексы для foreign key нужно делать обязательно, т.к. они используются не только при запросах данных, но и при изменениях.
В документации есть такое: If the referenced column(s) are changed frequently, it may be wise to add an index to the foreign key column so that referential actions associated with the foreign key column can be performed more efficiently.
И еще в пользу использования индексов говорит то, что PgAdmin III при создании foreign key автоматически создает индекс по соответствующему полю.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / foreign key & indexes / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]