Subject: | Re: Like
| Date: | Thu, 28 Dec 2017 00:49:40 +0000
| From: | Michael Kennedy <Info@KennedySoftware.ie>
| Newsgroups: | pnews.paradox-dos
|
Bernie,
> It certainly appears likely that pdox uses a form of soundex.
So, on integer/fl-point/date fields, I expect that "like" has no effect?
> First
> character critical then focusing on next four or so characters.
Yep - personally, I did use Soundex in a few apps over the years, but I
never liked the "first-char exact match" rule. I probably just used the
same char-substitution rules as apply to the subsequent chars, but I forget.
> A bit of research:
Thank you. All very interesting.
> I don't think it really matters which one we use as it seems nobody
> knows what pdox was doing anyway.
Agreed!
> An interesting trick to solve the first character limitation is to
> prepend a common character to each term, but as we're emulating pdox
> behavior that is is irrelevant here.
Nice trick, that!
But, one would probably then have to extend the standard rule to build a
four-digit code (instead of a 3-digit one)?
> Conclusion:
>
> Looks like sql default soundex is an appropriate translation for pdox
> "LIKE".
>
> Anyone disagree?
(Not me!).
- Mike
> On 22/12/17 10:05 pm, Michael Kennedy wrote:
>> On 22/12/2017 00:38, Steven Green wrote:
>>> don't recall all of the testing that was done, but it was generally
>>> concluded that it was skewed towards the first 5 characters of the
>>> string, and was less predictable than most dot-dot options.. don't
>>> know how you'd want to reproduce it, if you can't predict it
>>
>> AFAIR, I NEVER used "like", because I never knew how it worked.
>>
>> But, with that 5-char skew that Steve remembered, perhaps it was an
>> implementation of (standard?) "Soundex"? If so, it would apply only to
>> alphabetic (maybe alphanumeric?) strings:
>> - always do an exact match on the very first char,
>> - then match on the (english?) "sound" of the next 3/4/5/6/.. chars.
>>
>> Eg:
>>
>> If QBE has: Like paradox, this would translate to a Soundex code of P632
>>
>> Then, DB records with Paradox, Poridex, Piridicks, etc (which also
>> translate to P632) would be matches.
>>
>> (I've not run the above example).
>>
>> - Mike
>>
>>
>>> OK Steve, I'll take the bait!
>>>
>>> What is known of the traps/bugs/features/poo in 'LIKE'?
>>>
>>> Anyone wanna do some tests?
>>>
>>> I'll be quiet for a while trying to sensibly parse what we have so far,
>>> but will be lurking ...
>>>
>>> - Bernie
>>>
>>> ---
>>> This email has been checked for viruses by Avast antivirus software.
>>> https://www.avast.com/antivirus
>>>
|