Si tengo una tabla denominada envíos con columnas origin_state y destination_state . Quiero una nueva columna llamada st_st con destination_state valor origin_state . Por ejemplo, si una fila tiene SC como origen y GA como destino. Debería obtener SC_GA en el st_st
Lo intenté
INSERT INTO shipments(ST_ST) SELECT CONCAT(`Origin_state` , '_' ,`Destination State`) AS ST_ST From shipments;esta consulta comienza a insertar los valores al final de la tabla, no en la fila correspondiente. Por favor ayuda.
Utilice una columna generada :
alter table shipments add column st_st varchar(255) generated always as concat(`Origin_state` , '_' ,`Destination State`) ; También puede cambiar los valores usando update :
update shipments set st_st = concat(`Origin_state` , '_' ,`Destination State`); Sin embargo, una columna generada asegura que el valor en st_st sea siempre consistente, incluso para nuevas filas y si los valores cambian en las filas existentes.