Subject | Re: [firebird-support] Indexing on large char field |
---|---|
Author | Nando Dessena |
Post date | 2004-01-23T09:12:18Z |
Niall,
S> I have a small problem with a utility I am creating. It contains a
S> Varchar(1024) field which I need to do lots of locates on. Obviously it is
S> too big to index so I am looking for an algorithm use to create an index I
S> have tried what I thought would do it and that was a using a CRC of the
S> string to create an indexeable field. This works BUT I now find that there
S> are duplicate CRCs
no wonder. MD5 or other hashing algorithms would alleviate your
duplicate problem by a huge factor.
S> I would like to use an SQL statement to find the duplicates in one field
S> (Int64) the same as Access can do but I can't seem to get it write.
just GROUP BY the field HAVING COUNT(*) > 1.
HTH
Ciao
--
Nando mailto:nandod@...
S> I have a small problem with a utility I am creating. It contains a
S> Varchar(1024) field which I need to do lots of locates on. Obviously it is
S> too big to index so I am looking for an algorithm use to create an index I
S> have tried what I thought would do it and that was a using a CRC of the
S> string to create an indexeable field. This works BUT I now find that there
S> are duplicate CRCs
no wonder. MD5 or other hashing algorithms would alleviate your
duplicate problem by a huge factor.
S> I would like to use an SQL statement to find the duplicates in one field
S> (Int64) the same as Access can do but I can't seem to get it write.
just GROUP BY the field HAVING COUNT(*) > 1.
HTH
Ciao
--
Nando mailto:nandod@...