From: Richard Quadling on
Hi.

It seems that users cannot enter a vehicle registration 100% accurately.

We have recently released a small mobile web app which allows service
engineers/inspectors to enter a vehicle registration number and a pin
number to get service history for the vehicle.

We are getting around a 40% fail rate on the registrations for the
first time of entry. This drops to around a 1.5% error rate on the
second attempt.

Most of the time it is simply a case of 2 letters/numbers being
swapped. Sometimes a letter/number is entered for a number/letter.

0/O
1/I/l
2/Z
3/E
4/A
5/S
6/G
7/T
8/B
9/q

Some of the registrations are private and don't obey any format (NOTE:
Trailer registrations aren't the same as vehicle registrations - they
can be anything the owner wants. In some cases we have them as
straight numbers - 1, 2, 3, etc.).

I'm looking for is a way to compare what they've entered against a
known list and to provide my 10 best guesses.

What I'm stuck on is what criteria do I use.

I think something like the old style colour Mastermind game (right
colour in the right place, right colour wrong place, wrong colour).
But that's going to be slow. One of the contracts has over 30,000
vehicles/trailers available to them.

Any suggestions really.

Regards,

Richard.
From: "Daniel P. Brown" on
On Thu, Jul 15, 2010 at 11:54, Richard Quadling <rquadling(a)gmail.com> wrote:
>
> I'm looking for is a way to compare what they've entered against a
> known list and to provide my 10 best guesses.

Look into the following functions and families:

levenshtein()
similar_text()

You wouldn't want to use metaphone() or soundex(), because you're
working with alphanumeric combinations, but if you want to be a
glutton for punishment, it could be fun. Something along the lines of
using levenshtein() to get the best matches, then similar_text() to
score each of the matches would probably be a viable solution for you.
The last time I incorporated something like that was for my own use
to track down a record in a MySQL database for which I could remember
just a small blip of text. It looked through about 23 million records
in under two minutes and I found exactly what it was for which I was
searching --- even though I was off by one word. Would've taken me
forever to find it using alternative methods.

--
</Daniel P. Brown>
UNADVERTISED DEDICATED SERVER SPECIALS
SAME-DAY SETUP
Just ask me what we're offering today!
daniel.brown(a)parasane.net || danbrown(a)php.net
http://www.parasane.net/ || http://www.pilotpig.net/
From: Richard Quadling on
On 15 July 2010 17:09, Daniel P. Brown <daniel.brown(a)parasane.net> wrote:
>    Look into the following functions and families:
>
>        levenshtein()
>        similar_text()
>

Having just found a levenshtein() UDF for MS SQL [1]

I'm very impressed.

Thank you for the suggestion.

Regards,

Richard.

[1] http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=51540&whichpage=2#425160
From: "Daniel P. Brown" on
On Fri, Jul 16, 2010 at 07:09, Richard Quadling <rquadling(a)gmail.com> wrote:
>
> Having just found a levenshtein() UDF for MS SQL [1]
>
> I'm very impressed.
>
> Thank you for the suggestion.
>
> Regards,
>
> Richard.
>
> [1] http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=51540&whichpage=2#425160

Dear dearest sir;

Thank you for your formal reply. Your email is important to me.
Please contact me at your convenience to discuss this reply to your
reply.

Sincerely,

Bozo.



--
</Daniel P. Brown>
UNADVERTISED DEDICATED SERVER SPECIALS
SAME-DAY SETUP
Just ask me what we're offering today!
daniel.brown(a)parasane.net || danbrown(a)php.net
http://www.parasane.net/ || http://www.pilotpig.net/
From: Richard Quadling on
On 16 July 2010 13:47, Daniel P. Brown <daniel.brown(a)parasane.net> wrote:
> On Fri, Jul 16, 2010 at 07:09, Richard Quadling <rquadling(a)gmail.com> wrote:
>>
>> Having just found a levenshtein() UDF for MS SQL [1]
>>
>> I'm very impressed.
>>
>> Thank you for the suggestion.
>>
>> Regards,
>>
>> Richard.
>>
>> [1] http://www.sqlteam.com/forums/topic.asp?TOPIC_ID=51540&whichpage=2#425160
>
>    Dear dearest sir;
>
>    Thank you for your formal reply.  Your email is important to me.
> Please contact me at your convenience to discuss this reply to your
> reply.
>
>    Sincerely,
>
>    Bozo.
>
>
>
> --
> </Daniel P. Brown>
> UNADVERTISED DEDICATED SERVER SPECIALS
> SAME-DAY SETUP
> Just ask me what we're offering today!
> daniel.brown(a)parasane.net || danbrown(a)php.net
> http://www.parasane.net/ || http://www.pilotpig.net/
>

Oh. It must be Friday!