sql >> Base de Datos >  >> RDS >> PostgreSQL

Cómo insertar en matriz en PostgreSQL

A veces, es posible que deba seleccionar en una matriz, agregar a una matriz o insertar una matriz de objetos en PostgreSQL. En este artículo, veremos cómo insertar en una matriz en PostgreSQL.


Cómo insertar en una matriz en PostgreSQL

Estos son los pasos para insertar en una matriz en PostgreSQL. Digamos que tiene la siguiente tabla empleados(id,name, phone_numbers) tal que la columna de números de teléfono es una matriz de cadenas.

create table employees ( 
     id int,
     name varchar, 
     phone_numbers varchar[] 
);

Hay dos sintaxis aceptadas para insertar en una matriz en PostgreSQL:una que usa la palabra clave ARRAY y otra que usa comillas y llaves.


Uso de la palabra clave ARRAY

Aquí está la consulta SQL para insertar en la matriz en PostgreSQL usando la palabra clave ARRAY.

# insert into employees (id, name, phone_numbers)
         values (1, ' John Doe', ARRAY ['9998765432','9991234567']);

# select * from employees;
  id |   name    |      phone_numbers
 ----+-----------+-------------------------
   1 |  John Doe | {9998765432,9991234567}


En la consulta anterior, usamos ARRAY [‘9998765432′,’9991234567’] para insertar una matriz en la columna de PostgreSQL.


Uso de comillas simples y llaves

También podemos insertar en la matriz de PostgreSQL usando comillas simples y llaves como se muestra a continuación.

# insert into employees (id, name, phone_numbers)
  values (2, ' Jim Doe', '{"9996587432","9891334567"}');
 
# select * from employees;
  id |   name    |      phone_numbers
 ----+-----------+-------------------------
   1 |  John Doe | {9998765432,9991234567}
   2 |  Jim Doe  | {9996587432,9891334567}

En el ejemplo anterior, usamos ‘{“9996587432″,”9891334567”}’ para insertar en la matriz en PostgreSQL.

Tenga en cuenta que, en este caso, las llaves deben estar entre comillas simples. Además, dado que estamos insertando valores de cadena, deben estar entre comillas dobles, en lugar de comillas simples, de lo contrario obtendrá un error de sintaxis.


Insertar matriz de objetos

También puede insertar una matriz de objetos si tiene una matriz de columna de matriz en PostgreSQL. Digamos que tiene la siguiente tabla tal que ventas columna es una matriz de matriz.

create table employees ( 
     id int,
     name varchar, 
     sales int[][] 
);

Aquí está la consulta SQL para insertar una matriz de objetos en PostgreSQL.

# insert into employees (id, name, sales)
             values (2, ' Jim Doe', '{{150,100},{200,100}}');

# select * from employees;
  id |   name   |         sales
 ----+----------+-----------------------
   2 |  Jim Doe | {{150,100},{200,100}}

Tenga en cuenta que debe encerrar cada objeto de matriz entre llaves separadas, dentro de las llaves principales y comillas simples, ‘{{ 150.100} ,{ 200,100} }’ de lo contrario obtendrá un error.


¿Necesita una herramienta de informes para PostgreSQL? Ubiq facilita la visualización de datos en minutos y la supervisión en paneles en tiempo real. ¡Pruébalo hoy!