Simplified Syntax
This section briefly describes the syntax of the query language 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.
Select Statements
A select query has six clauses:
SELECT
,FROM
,WHERE
,GROUP BY
,HAVING
, andORDER BY
. TheSELECT
andFROM
clauses are required, but theWHERE
,GROUP BY
,HAVING
, andORDER BY
clauses are optional. Here is the high-level BNF syntax of a query language query:QL_statement ::= select_clause from_clause [where_clause][groupby_clause][having_clause][orderby_clause]The
SELECT
clause defines the types of the objects or values returned by the query.The
FROM
clause defines the scope of the query by declaring one or more identification variables, which can be referenced in theSELECT
andWHERE
clauses. An identification variable represents one of the following elements:The
WHERE
clause is a conditional expression that restricts the objects or values retrieved by the query. Although it is optional, most queries have aWHERE
clause.The
GROUP BY
clause groups query results according to a set of properties.The
HAVING
clause is used with theGROUP BY
clause to further restrict the query results according to a conditional expression.The
ORDER BY
clause sorts the objects or values returned by the query into a specified order.Update and Delete Statements
Update and delete statements provide bulk operations over sets of entities. They have the following syntax:
update_statement :: = update_clause [where_clause] delete_statement :: = delete_clause [where_clause]The update and delete clauses determine the type of the entities to be updated or deleted. The
WHERE
clause may be used to restrict the scope of the update or delete operation.