¿Cómo puedo copiar datos de una columna a otra en la misma tabla?

Resuelto jonney asked hace 13 años • 4 respuestas

¿Es posible copiar datos de la columna A a la columna B para todos los registros de una tabla en SQL?

jonney avatar Jun 10 '11 22:06 jonney
Aceptado

Qué tal esto

UPDATE table SET columnB = columnA;

Esto actualizará cada fila.

Ash Burlaczenko avatar Jun 10 '2011 15:06 Ash Burlaczenko
UPDATE table_name SET
    destination_column_name=orig_column_name
WHERE condition_if_necessary
dev4092 avatar Feb 26 '2014 12:02 dev4092

Esto actualizará todas las filas de esas columnas si el modo seguro no está habilitado.

UPDATE table SET columnB = columnA;

Si el modo seguro está habilitado, deberá utilizar una cláusula donde. Utilizo una clave principal mayor que 0, básicamente todas se actualizarán

UPDATE table SET columnB = columnA where table.column>0;

Vayuj Rajan avatar Jun 24 '2020 05:06 Vayuj Rajan

Si desea copiar una columna a otra columna con un tipo de datos diferente en PostgresSQL, primero debe convertir/convertir al tipo de datos; de lo contrario, devolverá

Consulta 1 ERROR: ERROR: la columna "test_date" es de tipo marca de tiempo sin zona horaria pero la expresión es de tipo carácter variable LÍNEA 1: actualizar nombre_tabla establecer fecha_prueba = fecha_cadena_col ^ SUGERENCIA: Deberá reescribir o convertir la expresión.

Un ejemplo de conversión de varchar a marca de tiempo:

update table_name set timestamp_col = date_string_col::TIMESTAMP;

Un ejemplo de conversión de varchar a int:

update table_name set int_column = string_col::INTEGER;

pero cualquier tipo de columna (excepto archivo o similar) se puede copiar a cadena ( character varying) sin convertir el tipo.

Muhammad Dyas Yaskur avatar Nov 11 '2021 19:11 Muhammad Dyas Yaskur