> On Fri, Jun 02, 2000 at 09:35:58AM +0400, news-gw wrote: > > 1) Индексы строятся автоматически при инсертах (так-же при bulk-copy) > > по-крайней мере я не знаю команды в SQL-92, которая-бы их перестраивала > > 2) По поводу их использования вообщето два варианта: > > а) оптимизатор запросов работает - тады все хорошо, индексы подчепляются > > автоматически > > Т.е. если я индекс делаю типа INDEX by_kode_time (kode, time), а > потом делаю простенький запрос к таблице SELECT ... ORDER BY kode, > то MySQL автоматом будет пользоваться выборкой по индексу? ORDER by имеет слабое отношение к оптимизации запросов ;-) > > > б) оптимизатор не работает (в сложных запросах) - тогда вариантов особо нет > > (в postgress есть такая фигня) > > А как "вычислить" работает ли оптимизатор в MySQL? Засасываешь большые данные в таблицу, создаешь два индекса один по kode, другой по time делаешь select count(*) from [tablename] where kode>5 and time>'1/1/00'; засекаешь время убиваешь два индекса, делаешь один по двум полям, повторяешь запрос. если разница значительная, то забудь про оптимизатор, если-же отличается не более чем на 20% - тогда оптимизатор работает. я незнаю твоих данных, но лучше сделать запрос позаковырестее, смысл создать два множества решений, обработка которых бы ускорялась при работающем оптимизаторе.
> > > 3) индексы используются для оптимизации при запросах как массивы > > упорядоченных записей > > ключи - уникальные поля, по которым при запросах (и пр.) производится > > идентификация записи. > > > > Популярно? :-) > > Достаточно :) > Спасибо. > > -- > Andrey Ivaschenko > nic-hdl: AI1569 > > > -- > To UNSUBSCRIBE, email to [EMAIL PROTECTED] > with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED] >