Gas
может по одной?
Индексы, indexes
Вспомнились вопросы по индексам, которые крутились в голове но ответов ранее не искал:
1. имеется составной (`field_1`, `field_2`), будет ли использоваться индекс на `field_2` при условии WHERE field_1 (> или <) const AND `field_2` = const; или для каждого `field_1` удовлетворяющему условию будет идти полный перебор связанных с ним `field_2` ?
2. имеется поле field varchar(255) и индекс на него `field`(10). При условиях WHERE field='google' или WHERE field LIKE 'g%', будет ли mysql обращаться к "файлу-данных" для записей где значение меньше 10 символов? Или оптимизатор не такой дурак и проверят, ага всё значение (например, "google") влезло в индекс и на этом успокаивается ?
Вопрос вызван тем, чтоб в explain при частичном индексе пропадает using index, я понимаю что он пишет план для общего случая, но мало ли.
3. я его уже задавал, но повторюсь
. Пример запроса тут (1-ый пост), допустим есть индекс на `category_id` и индекс на `description`. Действительно ли в случае fulltext поиска, для проверки условия по полю category_id - mysql будет сразу лезть в "файл-данных", а не пытаться найти его в key_buffer (память), вроде это логично и реально ?
p.s. по 3-му пункту наверное действительно никуда не лезет, для этого key_buffer должен содержать не только дерево index->data_pointer но и реверсное data_pointer->index
Вспомнились вопросы по индексам, которые крутились в голове но ответов ранее не искал:
1. имеется составной (`field_1`, `field_2`), будет ли использоваться индекс на `field_2` при условии WHERE field_1 (> или <) const AND `field_2` = const; или для каждого `field_1` удовлетворяющему условию будет идти полный перебор связанных с ним `field_2` ?
2. имеется поле field varchar(255) и индекс на него `field`(10). При условиях WHERE field='google' или WHERE field LIKE 'g%', будет ли mysql обращаться к "файлу-данных" для записей где значение меньше 10 символов? Или оптимизатор не такой дурак и проверят, ага всё значение (например, "google") влезло в индекс и на этом успокаивается ?
Вопрос вызван тем, чтоб в explain при частичном индексе пропадает using index, я понимаю что он пишет план для общего случая, но мало ли.
3. я его уже задавал, но повторюсь

p.s. по 3-му пункту наверное действительно никуда не лезет, для этого key_buffer должен содержать не только дерево index->data_pointer но и реверсное data_pointer->index