B(id integer), есть запрос вида update a set value='myval' where id in (select id from B); имеет ли в общем случае делать индекс по ID для таблицы B?
а как много столбцев в таблице B ?
А значения уникальные?
Думаю что индекс не нужен.
А лучше создайте индекс UNIQUE.соберите статистику. и смотрите EXPLAIN используется индекс или нет. Практика лучший советчик.
Имеет смысл делать в таблицэ B первичный ключ. Просто потому, что примерно все реляцыонные операцыи по факту очень рассчитывают на то, что ключ в таблицэ есть. А так, конкретно в этом примере для скорости это не требуется.
Обсуждают сегодня