This is an old revision of the document!


DRAFT

Omnidex SQL: SELECT ORDER BY Clause

See Also: SELECT statement FROM clauseWHERE clause GROUP BY clause

Description

The ORDER BY clause is used to return selected rows in sorted ascending or descending order. Multiple column_specs can be specified to cause a sort within the primary sort.

Syntax

  ORDER BY [  column_spec | column_position ] [ ASC | DESC ] 
           [, column_spec | column_position ] [ ASC | DESC ]

Examples

Column Names

SELECT company, contact, phone FROM customers ORDER BY company
SELECT company, contact, phone FROM customers ORDER BY company, contact
SELECT company, contact, phone FROM customers ORDER BY state

By Ordinal Position

select trans_date, trans_amount from trans_table order by 2;

Column Alias

SELECT company CO, contact CT, phone PH FROM customers ORDER BY CO
SELECT company, contact, phone FROM customers ORDER BY CO, CT

The column_spec can be in the format of [database.][table.]column or table_alias.column.

select trans_date, trans_amount from trans_table order by db1.trans_table.trans_amount;

Column_spec can also be prefixed with an alias name of the table's column or an alias name of an expression.

select trans_date, trans_amount - discount NetAmount from trans_table order by NetAmount;

Ascending {ASC), Descending (DESC) DESC (Descending) sorts will NOT be optimized, meaning they may increase the overall elapsed query time. ASC (Ascending) sorts may be optimized, depending on the index installation. Ascending is the default if neither is specified.

SELECT company, contact, phone FROM customers ORDER BY company asc;
SELECT customer_no, count(distinct order_no) FROM orders GROUP BY customer_no 
       ORDER BY 2 DESC, 1 ASC;
 
Back to top
dev/sql/statements/select/order_by.1278195358.txt.gz ยท Last modified: 2016/06/28 22:38 (external edit)