1. A method of executing a database query, the method comprising: (a) dynamically evaluating at least one performance criterion for a query during execution of at least a portion of the query; (b) selecting one of a plurality of query implementations defined in the query based upon the dynamically-evaluated performance criterion; and (b) continuing execution of the query using the selected query implementation.