array() (Funktion)

Die Funktion array() erstellt ein Array eines bestimmten Typs.

Syntax

Die Funktion array() hat folgende Syntax:
array = array(int type);
Der Wert ' type ist ein ganzzahliger Code, der den Typ des zu erstellenden Arrays angibt, wie in der folgenden Tabelle dargestellt:
Tabelle 1 ARRAY-Typen
Code erstellen Typ Beschreibung
1 int1 8 Bit.
2 int2 16 Bit.
3 int4 32 Bit.
4 int8 64 Bit.
5 Datum Datumsbereich vom 1. Januar 0001 bis 31. Dezember 9999. Die Plattenbelegung beträgt 4 Byte.
6 Zeit Stunden, Minuten und Sekunden mit bis zu sechs Dezimalstellen. Der Bereich ist 00:00:00.000000 - 23:59:59.999999. Die Plattenbelegung beträgt 8 Byte.
7 Zeitmarke Datumsteil und Zeitteil, wobei für Sekunden bis zu sechs Dezimalstellen gespeichert werden. Der Bereich geht vom 1. Januar 0001 00:00:00.000000 bis zum 31. Dezember 9999 23:59:59.999999. Die Plattenbelegung beträgt 8 Byte.
8 varchar Variable Länge mit einer maximalen Länge von 64.000 Zeichen. Es erfolgt kein Auffüllen mit Leerzeichen; die Daten werden wie eingegeben gespeichert. Für Zeichenfolgen mit variabler Länge (varchar) der Länge n beträgt die Plattenbelegung nicht mehr als n + 2 Byte.
9 nvarchar Unicode-Daten variabler Länge mit einer maximalen Länge von 16.000 Zeichen. Bei Verwendung der UTF-8-Codierung benötigt jeder Unicode-Codepunkt 1-4 Byte Speicher. Eine aus 10 Zeichen bestehende Zeichenfolge benötigt daher 10 Byte Speicher, wenn sie in ASCII-Darstellung vorliegt, bis zu 20 Byte, wenn sie im lateinischen Zeichensatz vorliegt, oder 40 Byte, wenn sie in reiner Kanji-Darstellung vorliegt (aber in der Regel 30 Byte).
10 float Gleitkommazahl mit einer Genauigkeit von 1 bis 15. Eine Genauigkeit kleiner als 6 verwendet 4 Byte. Bei einer Genauigkeit von 7 bis 15 werden 8 Byte verwendet.
11 doppelt Wert, der äquivalent zum Gleitkommawert (float) ist und eine Genauigkeit von 15 hat, wobei 8 Byte erforderlich sind.
15. Zeit mit Zeitzone Stunden, Minuten, Sekunden mit bis zu sechs Dezimalstellen und Zeitzonenunterschied zur GMT.

Rückgabe

Die Funktion erstellt den angegebenen Array-Typ.

Beispiel

Betrachten Sie das folgende Beispiel:
create table array_t(col1 int,col2 varchar(100));
CREATE TABLE
Mit der folgenden Abfrage INSERT wird ein Array des Typs 'int2' erstellt und in der Tabelle gespeichert:
insert into array_t values(1,array(2));
INSERT 0 1
Die folgende Abfrage zeigt, dass ein Array erstellt und in der Tabelle 'array_t' gespeichert wurde:
select * from array_t;
 col1 | col2 
------+------
    1 | ARR
(1 row)