Mike Yearwood
Toronto, Ontario, Canada
Walter Meester
HoogkarspelPays-Bas
Information générale
Catégorie:
Codage, syntaxe et commandes
Versions des environnements
Network:
Windows 2008 Server
>>>>Hey all
>>>>
>>>>I've got a UDF that is something like a cross between SEEK and LOOKUP(). The problem is - calling a UDF is slower than native functions.
>>>>
>>>>The function is liberally scattered everywhere. The parameters do not match the LOOKUP function, which would have been virtually perfect. I know a search and replace might work, but that will break a lot of code too.
>>>>
>>>>So - an idea has been tickling around my mind,
>>>>
>>>>Given the existing call ... MYSEEK(seekthis,"inalias","thistag","returnthis")
>>>>
>>>>would it be possible to #DEFINE and make the above into something native at compile time?
>>>>
>>>>Thanks
>>>Hi Mike,
>>>
>>>the cost of a call to a wrapper function is negligible, unless you are calling it thousands of times, which you shouldn't be doing anyway. So rewrite myseek to use LOOKUP() where appropriate, and you're done.
>>>
>>>Hank
>>
>>We are calling it many thousands of times because of it being used in queries. I disagree with the whole "premature optimization" schtick. Not optimizing at every chance is the true root of all evils.
>
>Hmmm, any reason why you're not using joins in your query?
>Can you give an example in a query?
Hi Walter
There are definitely times where joins are not the best answer. I find I want to use joins where there will be filtering on the joined table. In many cases, where it's simply a decoding - a code to a description, that can be done with a lookup like utility.
Précédent
Suivant
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement