SQL: ¿cómo puedo copiar una columna y sus datos en una nueva columna en la misma tabla?

Sé que quiero usar una declaración de actualización, pero tengo problemas con la estructura de la consulta.

preguntado el 12 de junio de 12 a las 20:06

Si no desea crear una columna "nueva", cambie el título de la pregunta a "otra" columna. Nueva columna significa que va a crear una nueva columna. -

4 Respuestas

La primera de las siguientes 2 sentencias SQL creará la nueva columna en la tabla, y la segunda, update declaración llenará la nueva columna de la columna anterior.

alter table Table1 add newColumn char(32);
update table1 set newColumn=oldColumn;
commit;

Respondido el 13 de junio de 12 a las 02:06

dicho esto, si vas a hacer este tipo de operación en un programa en funcionamiento, hay algo que no está bien en el diseño de tu programa. Las columnas y las tablas deben diseñarse con anticipación siguiendo reglas como la normalización, y una vez finalizado el esquema, escribirá el programa. - srini.venigalla

No puede crear una nueva columna usando una actualización, primero debe hacerlo. Entonces es tan simple como:

update TheTable set NewColumn = OldColumn

Respondido el 12 de junio de 12 a las 20:06

UPDATE table
SET column2 = column1

Respondido el 12 de junio de 12 a las 21:06

Si publica muestras de código, XML o datos, POR FAVOR resalte esas líneas en el editor de texto y haga clic en el botón "ejemplos de código" ( { } ) en la barra de herramientas del editor para formatearlo y resaltarlo con sintaxis. - marc_s

update table_name set column_to_be_changed = existing column 

Respondido el 12 de junio de 12 a las 21:06

Bienvenido a StackOverflow: si publica código, XML o muestras de datos, Por favor resalte esas líneas en el editor de texto y haga clic en el botón "ejemplos de código" ( { } ) en la barra de herramientas del editor para formatearlo y resaltarlo con sintaxis. - marc_s

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.