UNION operation

Description

Combines the results of two or more select statements.

Syntax

select-without-order-byUNIONALL ] select-without-order-by
… [ UNIONALL ] select-without-order-by ]…
… [ ORDER BY integerASC | DESC ] [, …] ]

Examples

Example 1

Lists all distinct surnames of employees and customers:

SELECT Surname
FROM Employees
UNION
SELECT Surname
FROM Customers

Usage

The results of several SELECT statements can be combined into a larger result using UNION. The component SELECT statements must each have the same number of items in the select list, and cannot contain an ORDER BY clause. See “FROM clause”.

The results of UNION ALL are the combined results of the component SELECT statements. The results of UNION are the same as UNION ALL except that duplicate rows are eliminated. Eliminating duplicates requires extra processing, so UNION ALL should be used instead of UNION where possible.

If corresponding items in two select lists have different data types, Sybase IQ chooses a data type for the corresponding column in the result, and automatically converts the columns in each component SELECT statement appropriately.

If ORDER BY is used, only integers are allowed in the order by list. These integers specify the position of the columns to be sorted.

The column names displayed are the same column names that display for the first SELECT statement.

NoteWhen SELECT statements include constant values and UNION ALL views but omit the FROM clause, use iq_dummy to avoid errors. See “FROM clause” for details.


Side effects

None.

Standards

Permissions

Must have SELECT permission for each of the component SELECT statements.

See also

SELECT statement