This section briefly describes the syntax of EJB QL so that you can quickly move on to the next section, Example Queries. When you are ready to learn about the syntax in more detail, see the section Full Syntax (page 173).
An EJB QL query has three clauses: SELECT, FROM, and WHERE. The SELECT and FROM clauses are required, but the WHERE clause is optional. Here is the high-level BNF syntax of an EJB QL query:
EJB QL :: = select_clause from_clause [where_clause]
The SELECT clause defines the types of the objects or values returned by the query. A return type is either a local interface, a remote interface, or a persistent field.
The FROM clause defines the scope of the query by declaring one or more identification variables, ...