

# 删除列
<a name="updates-removing-columns"></a>

如果表中的列不再包含数据，您可能需要删除它们，或者，您可能需要限制对于列数据的访问。
+ 您可以从 JSON、Avro 表，以及按名称读取的 Parquet 和 ORC 表中删除列。有关信息，请参阅[了解 Apache ORC 和 Apache Parquet 的索引访问权限](handling-schema-updates-chapter.md#index-access)。
+ 如果您希望保留已在 Athena 中创建的表，我们不建议从 CSV 和 TSV 表中删除列。删除列会破坏架构，需要您重新创建不包含已删除列的表。

在本示例中，将从 Parquet 表中删除一列``totalprice``并运行查询。在 Athena 中，Parquet 默认是按名称读取的，因此我们省略了指定按名称读取的 SERDEPROPERTIES 配置。请注意，即使更改了架构，以下查询也会成功：

```
CREATE EXTERNAL TABLE orders_parquet_column_removed (
   `o_orderkey` int, 
   `o_custkey` int, 
   `o_orderstatus` string, 
   `o_orderdate` string, 
   `o_orderpriority` string, 
   `o_clerk` string, 
   `o_shippriority` int, 
   `o_comment` string
) 
STORED AS PARQUET
LOCATION 's3://amzn-s3-demo-bucket/orders_parquet/';
```