

# Adición de columnas al principio o en medio de la tabla
<a name="updates-add-columns-beginning-middle-of-table"></a>

La adición de columnas es uno de los cambios de esquema más frecuentes. Por ejemplo, se puede añadir una columna para enriquecer una tabla con datos nuevos. O añadir una columna si el origen de una columna existente ha cambiado y se desea mantener la versión anterior de esta columna para que sigan funcionando las aplicaciones que dependen de ella.

Para añadir columnas al principio o en medio de la tabla y continuar ejecutando consultas en las tablas existentes, utilice AVRO, JSON, Parquet u ORC si su propiedad del SerDe está configurada para la lectura por nombre. Para obtener más información, consulte [Descripción del acceso a los índices para Apache ORC y Apache Parquet](handling-schema-updates-chapter.md#index-access).

No añada columnas al principio o en medio de la tabla en los formatos CSV y TSV, ya que estos dependen de la ordenación. La adición de una columna en estos casos dará lugar a errores de discrepancia de esquemas cuando cambie el esquema de las particiones.

 En el siguiente ejemplo, se crea una tabla nueva que agrega una columna `o_comment` en el centro de una tabla en función de los datos JSON.

```
CREATE EXTERNAL TABLE orders_json_column_addition (
   `o_orderkey` int, 
   `o_custkey` int, 
   `o_orderstatus` string, 
   `o_comment` string, 
   `o_totalprice` double, 
   `o_orderdate` string, 
   `o_orderpriority` string, 
   `o_clerk` string, 
   `o_shippriority` int, 
) 
ROW FORMAT SERDE 'org.openx.data.jsonserde.JsonSerDe'
LOCATION 's3://amzn-s3-demo-bucket/orders_json/';
```