Re: Btree index on varchar
От | Tom Lane |
---|---|
Тема | Re: Btree index on varchar |
Дата | |
Msg-id | 18214.985364996@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Btree index on varchar (Alexaki Sofia <alexaki@ics.forth.gr>) |
Список | pgsql-sql |
Alexaki Sofia <alexaki@ics.forth.gr> writes: > I have a question for Btree indexes on a varchar field. > Does postgres (7.0.2) uses a special encoding when creating > Btree indexes on varchar?? "Special encoding"? No ... a varchar is a varchar. > Is it much more efficient to create indexes on integer than > on strings with average length 30 chars?? It'd save some space and thereby save I/O time. But I dunno about "much" more efficient. Figuring that there's a dozen or so bytes of index-entry overhead in addition to the value itself, you might be looking at a factor of 3 or so difference in index tuple size, hence about a 3x savings in I/O for index scans; but that wouldn't translate to anything like a factor of 3 for the total operation, since the number of main-table tuples visited wouldn't change. Try it and see, but I'd guess that the net effect would be relatively small. Really what you want to be asking yourself is which columns do you need an index on for your query logic. What datatype they are is a minor consideration. regards, tom lane
В списке pgsql-sql по дате отправления: