JD_Toims - 10:31 pm on Dec 15, 2013 (gmt 0)
I've used them -- On the "real-world sites" I've tried them on they're not as fast as "SELECT what_I_need FROM big_table USE INDEX (the_single_corresponding_index) WHERE var=value"
And, I meant multiple requests as in, even with JOIN you're requesting from 2 [or more] tables -- that's more requests wrt at least two times each of the following: indexes to find/read, related var=vals to evaluate, pointers to find within the indexes, storage locations for the info, "different parts of the disk to hit/read" to get the info out, etc.
If you get to three or four JOINS, you're tripling or quadrupling the time and "effort" to find and get the information as compared to a single index pointing to where the info is on the disk.
It's just not as fast in the real-world testing I've done to use JOINS -- Maybe MySQL has changed something since I've tested, but relational, even using JOIN has always been slower for me than a "big table" design like Google originally used -- I don't quite have the processing power of Google [lol], so I have to maximize everything I can wrt speed when speed is a factor.