I have noticed that, at least under tcl, the order of the parameters on the mk::select or $dbObj select statements appear to be processed in order.
For example, a database of 10,000 file names (File), each with a Mounted flag set to 1
mk::select -glob File $pattern Mounted 1
will be much faster than
mk::select Mounted 1 -glob File $pattern
Also, rather than "Mounted 1" use "-exact Mounted 1" for a further speedup
mk::select -glob File $pattern -exact Mounted 1