1. A method for managing execution of a query against data of a database, comprising: receiving a query against the data of the database, the query having at least one query condition including a user-defined function; determining whether the user-defined function satisfies a predefined index applicability criterion; and if so, creating an index over relevant data of the database for the user-defined function, whereby the index is suitable for use in execution of the query against the data of the database to determine a corresponding query result.