Re: Advice - indexing on varchar fields where only last x characters known

From: Gavin Flower <GavinFlower(at)archidevsys(dot)co(dot)nz>
To: Gary Stainburn <gary(dot)stainburn(at)ringways(dot)co(dot)uk>, "pgsql-sql(at)postgresql(dot)org" <pgsql-sql(at)postgresql(dot)org>
Subject: Re: Advice - indexing on varchar fields where only last x characters known
Date: 2013-10-17 18:27:05
Message-ID: 52602BF9.7020403@archidevsys.co.nz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

On 18/10/13 00:20, Gary Stainburn wrote:
> I have a problem with a field that appears on a number of my tables.
>
> The field is the Vehicle Identification Number. Every vehicle has one and it
> uniquely identifies that vehicle.
>
> Traditionally this was a 11 character string but a number of years ago was
> extended to 17 characters by adding a 6 character prefix.
>
>
> The problem that I have is that these VIN numbers are provided by a number of
> data systems including manufacturer feeds, logistics companies as well as
> internal systems. Some use the full 17 character string while others only use
> the last 11.
>
> On top of this, my users are used to only having to type the last 6 characters
> for speed and usability reasons.
>
> However, it means that every time I'm trying to connect various tables up
> using foreign keys or doing searches I have to make allowences for this which
> means I'm using things like substring, like, regex etc. all of which are very
> slow.
>
> Can anyone suggest a better / more efficient way of handling these.
>
> Gary
>
>
Use 2 fields, one for the 6 character prefix, and the other for the
original 11 digits.

Search for the 6 character prefix, or a null prefix AND the first 6
characters of the 11 digit field.

It might be better to have a string for the prefix and make it blank
rather than null, when nothing is entered there.

Cheers,
Gavin

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Alvaro Herrera 2013-10-17 18:39:02 Re: Advice - indexing on varchar fields where only last x characters known
Previous Message Craig R. Skinner 2013-10-17 11:45:12 Re: Advice - indexing on varchar fields where only last x characters known