0Pricing
SQL Academy · Lección

Conceptos básicos de las columnas de arrays

Cree y lea valores de arrays

Conceptos básicos de las columnas de arrays es una lección gratuita de SQL Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de SQL Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de SQL Academy incluye 4 lecciones en total.

¿Qué es una columna de tipo array?

PostgreSQL admite columnas de tipo array, que permiten almacenar varios valores del mismo tipo en una sola celda. En lugar de almacenar texto separado por comas, obtiene una lista tipada correctamente que puede consultar, indexar y manipular mediante funciones integradas.

Los arrays pueden contener números enteros, texto, valores booleanos, fechas o cualquier otro tipo de PostgreSQL. La sintaxis es similar a integer[] o text[].

Declarar una columna de tipo array

Añada [] después del nombre de cualquier tipo al escribir una instrucción CREATE TABLE para declarar una columna de tipo array. La tabla siguiente almacena una lista de etiquetas para cada artículo.

CREATE TABLE articles (
  id      serial PRIMARY KEY,
  title   text NOT NULL,
  tags    text[]
);

Insertar valores en un array

Use literales con llaves entre comillas simples para insertar datos de tipo array. Cada elemento se separa mediante una coma dentro de las llaves: '{"sql","database"}'.

Como alternativa, puede usar la sintaxis del constructor ARRAY[...] que se muestra en la segunda fila.

INSERT INTO articles (title, tags) VALUES
  ('Intro to SQL',    '{"sql","beginner"}'),
  ('Advanced Joins',  ARRAY['sql','joins','performance']),
  ('NULL Handling',   '{"sql","nulls","tips"}');

Leer el array completo

Seleccionar una columna de tipo array funciona igual que seleccionar cualquier otra columna. PostgreSQL devuelve el array completo como un único valor en el conjunto de resultados, mostrado con el formato de llaves.

SELECT id, title, tags
FROM   articles;

Acceder a un solo elemento

Los subíndices de los arrays en PostgreSQL comienzan en 1 (el primer elemento está en el índice 1, no en el 0). Use corchetes después del nombre de la columna para acceder a un elemento específico.

SELECT title,
       tags[1] AS first_tag,
       tags[2] AS second_tag
FROM   articles;

Segmentar un array

Puede extraer un rango de elementos mediante la sintaxis de segmento lower:upper dentro de corchetes. Ambos límites son inclusivos.

SELECT title,
       tags[1:2] AS first_two_tags
FROM   articles;

Filtrar con ANY

Para buscar filas en las que un array contenga un valor específico, use la expresión = ANY(column). Esto devuelve las filas en las que al menos un elemento del array coincide con el valor indicado.

SELECT id, title, tags
FROM   articles
WHERE  'joins' = ANY(tags);

Filtrar con el operador @>

El operador de inclusión @> comprueba si el array de la izquierda contiene todos los elementos del array de la derecha. Es útil cuando necesita obtener las filas que incluyen un conjunto de etiquetas requeridas.

SELECT id, title, tags
FROM   articles
WHERE  tags @> ARRAY['sql','tips'];

Obtener la longitud de un array

La función array_length(arr, dimension) devuelve el número de elementos de una dimensión determinada. Para un array unidimensional, use 1 como segundo argumento.

SELECT title,
       array_length(tags, 1) AS tag_count
FROM   articles
ORDER  BY tag_count DESC;

Añadir elementos

Use la función array_append(array, element) o el operador de concatenación || para añadir un elemento nuevo al final de una columna de tipo array existente.

UPDATE articles
SET    tags = array_append(tags, 'featured')
WHERE  title = 'Intro to SQL';

SELECT title, tags FROM articles WHERE title = 'Intro to SQL';

Convertir un array en filas con UNNEST

La función unnest(array) expande un array en un conjunto de filas: una fila por cada elemento. Es práctica para realizar agregaciones, JOIN u operaciones que necesitan trabajar con cada elemento por separado.

SELECT title, unnest(tags) AS tag
FROM   articles
ORDER  BY title, tag;

Comprobación rápida

Compruebe sus conocimientos sobre las columnas de tipo array de PostgreSQL.

Resumen: conceptos básicos de las columnas de tipo array

En esta lección aprendió cómo funcionan de principio a fin las columnas de tipo array de PostgreSQL:

  • Declare arrays con la sintaxis type[] en CREATE TABLE
  • Inserte valores mediante literales con llaves o ARRAY[...]
  • Acceda a los elementos mediante índices que comienzan en 1 y a segmentos con lower:upper
  • Filtre con = ANY(col) para un valor individual o con @> para un subconjunto
  • Mida la longitud con array_length(col, 1)
  • Añada elementos mediante array_append() o ||
  • Expanda arrays en filas con unnest()

Los arrays son una función potente de PostgreSQL que puede simplificar los esquemas cuando una lista de valores pertenece a una sola entidad.

Preguntas frecuentes

¿La lección «Conceptos básicos de las columnas de arrays» es gratis?

Sí — el texto completo de «Conceptos básicos de las columnas de arrays» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de SQL Academy, actualiza a CoddyKit PRO. El curso de SQL Academy incluye 4 lecciones en total.

¿Qué aprenderé en «Conceptos básicos de las columnas de arrays»?

Cree y lea valores de arrays Practicas SQL Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar SQL Academy?

No se requiere experiencia previa. SQL Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.

¿Cuánto tiempo toma la lección «Conceptos básicos de las columnas de arrays»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de SQL Academy?

Sí. Cada lección de SQL Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Conceptos básicos de las columnas de arrays
  2. Búsqueda dentro de arrays
  3. UNNEST y agregación
  4. Arrays frente a tablas normalizadas
← Volver a SQL Academy