Actually, the retrieved data is not displayed in a mere random order. If
unsorted, data will typically be displayed in the order in which it appears in
the underlying tables. This could be the order in which the data was added to
the tables initially. However, if data was subsequently updated or deleted, the
order will be affected by how the DBMS reuses reclaimed storage space. The end
result is that you cannot (and should not) rely on the sort order if you do not
explicitly control it. Relational database design theory states that the
sequence of retrieved data cannot be assumed to have significance if ordering
was not explicitly specified.

Clause SQL statements are made up of clauses, some required and some
optional. A clause usually consists of a keyword and supplied data. An example
of this is the SELECT statement's FROM clause, which you
saw in the last lesson.

To explicitly sort data retrieved using a SELECT statement, the
ORDER BY clause is used. ORDER BY takes the name of one or
more columns by which to sort the output. Look at the following example:

INPUT

SELECT prod_name
FROM Products
ORDER BY prod_name;

ANALYSIS

This statement is identical to the earlier statement, except it also specifies
an ORDER BY clause instructing the Database Management System software
to sort the data alphabetically by the prod_name column. The results
are as follows:

Position of ORDER BY Clause When specifying an ORDER BY
clause, be sure that it is the last clause in your SELECT statement.
Using clauses out of order will generate an error message.

TIP

Sorting by Nonselected Columns More often than not, the columns used
in an ORDER BY clause will be ones that were selected for display.
However, this is actually not required, and it is perfectly legal to sort data
by a column that is not retrieved.