9. The computer-implemented method of claim 8 , wherein query is executed by an application configured to speed up query execution for each input value selected from a numerical input value and a string input value and for each output value selected from a numerical output value, a string output value, and a Boolean output value, wherein the application is further configured to: determine that a second user-defined function satisfies the predefined deterministic criterion upon determining that the second user-defined function is associated with a deterministic flag.
10. The computer-implemented method of claim 9 , wherein the application is further configured to: determine whether a predefined subset of acceptable input values to the third user-defined function includes one or more field values stored for a field of the database, on which the third user-defined function is invoked; and determine that a third user-defined function satisfies the predefined deterministic criterion upon determining that the third user-defined function is deterministic for the predefined subset of acceptable input values to the third user-defined function; wherein query execution is sped up by caching results of the third user-defined function only over the predefined subset of acceptable input values to the third user-defined function.