Martin Reid
mwp.reid at qub.ac.uk
Thu Aug 14 23:07:22 CDT 2003
Someone send the origonal question and I will pass it on to someone whoh knows. Martin ----- Original Message ----- From: "John Colby" <jcolby at colbyconsulting.com> To: "Access Developers discussion and problem solving" <accessd at databaseadvisors.com> Sent: Thursday, August 14, 2003 11:43 AM Subject: RE: [AccessD] Indexes on text fields > Jim, > > Since no one (I know) knows the internals of JET, I am not going to argue > with you on that account. In fact, I am not going to argue with you at all. > If you wish to believe (or hope, or pray) that Jet can magically parse a > bunch of stuff used to create an appended string back into it's components, > and then use that information to decide whether or not to attempt to apply > Rushmore to whatever pieces it can determine comes from table fields.... > > uh... > > Can I state it as a fact. Of course not. > > What I can say is that I have a very good class for timing stuff down to > milli-second increments. Anyone who wishes to may use that class to > empirically time such queries. I will be willing to bet good money, up to a > month's wages (I'm "unemployed" of course) against an equal number of > doughnuts that you will find, 100 times out of 100 times, that attempting to > apply a sort to such a field will, each and every time, be an order of > magnitude slower than using the component fields yourself to perform the > sort. > > And of course, having done that, one still can't state as FACT that Jet > isn't attempting to use Rushmore to perform the sort on the appended string > field. > > And yes, I have read it in various places over the years. I have long ago > lost the ability to recall where I read every piece of information I have > read. > > So let's not start any myths here. I do not know for a fact that Jet > doesn't use Rushmore (or anything else) to attempt to optimize such queries. > > I simply have the sense to look at what would be required, the silliness of > the concept, and the results I have seen in my personal experience, and > state that I know, without a shadow of a doubt, that Access makes no attempt > to apply such methods to a sort of an appended string. > > John W. Colby > www.colbyconsulting.com > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of Jim Dettman > Sent: Thursday, August 14, 2003 1:12 PM > To: Access Developers discussion and problem solving > Subject: RE: [AccessD] Indexes on text fields > > > John, > > <<Nope, I cannot give you and sources and will not spend my time looking. > Go > look in any book on Access queries, sorting and indexing and I'm sure you'll > find your own.>> > > That's why I'm asking. I have pretty much read everything there is to > read about JET over the past 10 years, and I've never seen anything on this. > > <<[Fielda] & Random() & [Fieldb] & ascii(right$("John Colby",1)) > > How in the world is any index on FieldA and FieldB going to help you sort > that expression into logical order?>> > > Rushmore works by making merges/intersections between indexes. JET > queries as we all know are very aware of the underlying tables. This has > been a key feature of Access/JET since day 1. JET may be smart enough to > figure out that the logical order is based on two fields it already has > indexes for. Then again it may not be. > > <<How in the world is Access going to determine whether to even try?>> > > It knows the field names and what tables they come from. > > <<The resulting string expression can be ANYTHING!!!>> > > Yes, but that wasn't the example Mark gave. > > <<Access does NOT use the indexes on the fields used to build up an appended > string. If you apply a sort order to such a string, Access will do the sort > on the resulting string, on-the-fly, and it will be PAINFULLY slow!!!>> > > That seems to be the case, but do you really know for sure? I don't > believe you do. I'm not saying your wrong, but I don't think you can state > it as a fact, unless you have seen docs on JET's internal workings. That's > why I asked you to cite a source. > > It's just like the myth that got started about domain functions always > being the slowest of methods. This is not the case as in some situations, a > domain function can actually beat every other method. That floated around > for several years until someone sat down and tested it and found it not to > be true. > > Jim Dettman > President, > Online Computer Services of WNY, Inc. > (315) 699-3443 > jimdettman at earthlink.net > > -----Original Message----- > From: accessd-bounces at databaseadvisors.com > [mailto:accessd-bounces at databaseadvisors.com]On Behalf Of John Colby > Sent: Thursday, August 14, 2003 10:09 AM > To: Access Developers discussion and problem solving > Subject: RE: [AccessD] Indexes on text fields > > > <<snip>> > > > _______________________________________________ > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com > > > > _______________________________________________ > AccessD mailing list > AccessD at databaseadvisors.com > http://databaseadvisors.com/mailman/listinfo/accessd > Website: http://www.databaseadvisors.com >