1. The retrieval of information from a database according to a set of retrieval criteria, the database itself remaining unchanged.
2. In the context of a specific query language, the technique of translating the retrieval criteria specified using the language into more primitive database-access operations, including a selection among different methods to choose the most efficient in the particular circumstances.