fonction array()

La fonction " array() crée un tableau d'un type spécifié.

Syntaxe

La fonction " array() a la syntaxe suivante :
array = array(int type);
La valeur " type est un code entier qui spécifie le type de tableau à créer, comme indiqué dans le tableau suivant :
Tableau 1. Types de tableaux
Coder Type Descriptif
1 int1 8 bits.
2 int2 16 bits.
3 int4 32 bits.
4 int8 64 bits.
5 date Plage de dates allant du 1er janvier 0001 au 31 décembre 9999. L'utilisation du disque est de 4 octets.
6 heure Heures, minutes et secondes avec six positions décimales. La plage est comprise entre 00:00:00.000000 et 23:59:59.999999. L'utilisation du disque est de 8 octets.
7 horodatage Partie date et partie heure, avec mémorisation des secondes jusqu'à 6 positions décimales. La plage est comprise entre le 1er janvier 0001 00:00:00.000000 et le 31 décembre 9999 23:59:59.999999. L'utilisation du disque est de 8 octets.
8 varchar Longueur variable, avec un maximum de 64 000 caractères. Il n'y a pas d'espace vide ; les données sont enregistrées telles qu'elles ont été saisies. Pour les chaînes varchar de longueur n, l'utilisation du disque ne dépasse pas n + 2 octets.
9 nvarchar Données Unicode de longueur variable avec une longueur maximale de 16 000 caractères. En utilisant le codage UTF-8, chaque point de code Unicode nécessite de 1 à 4 octets de stockage. Par conséquent, une chaîne de 10 caractères nécessite 10 octets de stockage si elle est ASCII, jusqu'à 20 octets si elle est latine, ou jusqu'à 40 octets si elle est purement kanji (mais généralement 30 octets).
10 séparer Nombre à virgule flottante avec une précision de 1 à 15. Une précision inférieure à 6 utilise 4 octets. Une précision de 7 à 15 utilise 8 octets.
11 doublon Valeur équivalente à un flottant avec une précision de 15, utilisant 8 octets.
30 timeTZ Heures, minutes, secondes jusqu'à la sixième décimale et décalage du fuseau horaire par rapport à l'heure GMT.

Retours

La fonction crée le type de tableau spécifié.

Exemple

Prenons l'exemple suivant :
create table array_t(col1 int,col2 varchar(100));
CREATE TABLE
La requête INSERT suivante crée un tableau de type int2 et le stocke dans le tableau :
insert into array_t values(1,array(2));
INSERT 0 1
La requête suivante montre qu'un tableau a été créé et stocké dans la table array_t :
select * from array_t;
 col1 | col2 
------+------
    1 | ARR
(1 row)