10.12.2012 Views

The Java EE 5 Tutorial (PDF) - Oracle Software Downloads

The Java EE 5 Tutorial (PDF) - Oracle Software Downloads

The Java EE 5 Tutorial (PDF) - Oracle Software Downloads

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

FROM Player AS p, IN (p.teams) t<br />

WHERE t.league.sport = ’soccer’<br />

WHERE Clause<br />

<strong>The</strong> WHERE clause specifies a conditional expression that limits the values returned by the query.<br />

<strong>The</strong> query returns all corresponding values in the data store for which the conditional<br />

expression is TRUE. Although usually specified, the WHERE clause is optional. If the WHERE clause<br />

is omitted, then the query returns all values. <strong>The</strong> high-level syntax for the WHERE clause follows:<br />

where_clause ::= WHERE conditional_expression<br />

Literals<br />

<strong>The</strong>re are four kinds of literals: string, numeric, Boolean, and enum.<br />

String Literals<br />

A string literal is enclosed in single quotes:<br />

’Duke’<br />

If a string literal contains a single quote, you indicate the quote by using two single quotes:<br />

’Duke’’s’<br />

Like a <strong>Java</strong> String, a string literal in the query language uses the Unicode character encoding.<br />

Numeric Literals<br />

<strong>The</strong>re are two types of numeric literals: exact and approximate.<br />

An exact numeric literal is a numeric value without a decimal point, such as 65,– 233, and +12.<br />

Using the <strong>Java</strong> integer syntax, exact numeric literals support numbers in the range of a <strong>Java</strong><br />

long.<br />

An approximate numeric literal is a numeric value in scientific notation, such as 57.,– 85.7, and<br />

+2.1. Using the syntax of the <strong>Java</strong> floating-point literal, approximate numeric literals support<br />

numbers in the range of a <strong>Java</strong> double.<br />

Boolean Literals<br />

A Boolean literal is either TRUE or FALSE. <strong>The</strong>se keywords are not case-sensitive.<br />

Full Query Language Syntax<br />

Chapter 27 • <strong>The</strong> <strong>Java</strong> Persistence Query Language 749

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!