Defines a new collation using the specified operating system locale settings, or by copying an existing collation.
CREATE COLLATION <name> (
[ LOCALE = <locale>, ]
[ LC_COLLATE = <lc_collate>, ]
[ LC_CTYPE = <lc_ctype> ])
CREATE COLLATION <name> FROM <existing_collation>
To be able to create a collation, you must have CREATE
privilege on the destination schema.
LC_COLLATE
and
LC_CTYPE
at once. If you specify this, you cannot specify either of those parameters.
LC_COLLATE
locale category. The locale must be applicable to the current database encoding. (See
CREATE DATABASE for the precise rules.)
LC_CTYPE
locale category. The locale must be applicable to the current database encoding. (See
CREATE DATABASE for the precise rules.)
To be able to create a collation, you must have CREATE
privilege on the destination schema.
Use DROP COLLATION
to remove user-defined collations.
See Collation Support in the PostgreSQL documentation for more information about collation support in Greenplum Database.
To create a collation from the operating system locale fr_FR.utf8
(assuming the current database encoding is UTF8
):
CREATE COLLATION french (LOCALE = 'fr_FR.utf8');
To create a collation from an existing collation:
CREATE COLLATION german FROM "de_DE";
This can be convenient to be able to use operating-system-independent collation names in applications.
There is a CREATE COLLATION
statement in the SQL standard, but it is limited to copying an existing collation. The syntax to create a new collation is a Greenplum Database extension.
ALTER COLLATION, DROP COLLATION
Parent topic: SQL Commands