Я не парень. Но мне нужно создавать таблицы и делать с ними операции CRUD. Я запутался, если я создаю индекс по всем столбцам по умолчанию или нет? Вот мое понимание, которое я считаю при создании индекса.
Указатель в основном содержит диапазон расположения памяти (начало памяти, где первое значение сохраняется в конце памяти, где последнее значение сохранены). Поэтому, когда мы вставляем какое-либо значение в индекс таблицы для столбца, нужно обновлять, поскольку оно имеет еще одно значение, но обновление столбца значение не повлияет на значение индекса. Правильно?. Итак, нижняя строка - это когда мой столбец используется в соединении между двумя таблицами, которые мы должны рассмотреть создание индекса в столбце, используемом в объединении, но все остальные столбцы можно пропустить, потому что, если мы создадим индекс на них, это потребует дополнительной стоимости обновление значения индекса, когда новое значение вставляется в столбец. Вправо?
Рассмотрим этот сценарий, где таблица mytable
содержит два трех столбца: я col1
, col2
, col3
. Теперь мы запускаем этот запрос
select col1,col2 from mytable
Теперь здесь есть два случая. В первом случае мы создаем индекс на col1
и col2
. Во втором случае мы не создаем индекс. ** По моему пониманию
случай 1 будет быстрее, чем case2, потому что в случае 1 мы, оракул, можем быстро найти местоположение памяти колонок. Итак, здесь я не использовал столбцы соединения, но
все же индекс помогает здесь. Так что я должен рассматривать создание индекса здесь или нет? **
Что если в том же сценарии выше, если мы стреляем
select * from mytable
вместо
select col1,col2 from mytable
Здесь будет указана помощь?