---
title: "ANALYZE | OceanBase 文档中心"
description: "ANALYZE 描述 该语句用于收集表或表分区的统计信息。 语法 ANALYZE TABLE [ schema. ]table_name [ PARTITION (partition) | SUBPARTITION (subpartition) ] { compute_statistics_clause | esti…"
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 3.2.3 企业版 LTS

# ANALYZE

更新时间：2023-07-18 17:25:59

## 描述

该语句用于收集表或表分区的统计信息。

## 语法

```sql
ANALYZE
  TABLE [ schema. ]table_name
    [ PARTITION (partition) | SUBPARTITION (subpartition) ]
  { compute_statistics_clause | estimate_statistics_clause } ;

compute_statistics_clause:
 COMPUTE STATISTICS [ for_clause ]

estimate_statistics_clause:
     ESTIMATE STATISTICS [ for_clause ]
     [ SAMPLE integer { ROWS | PERCENT } ]

for_clause:
 FOR
     TABLE
   | ALL [ INDEXED | HIDDEN ] COLUMNS [ SIZE integer ]
   | COLUMNS [ SIZE integer ]
     { column | attribute } [ SIZE integer ]
       [ { column | attribute }
         [ SIZE integer ]
       ]
   [ FOR
    { TABLE
    | ALL [ INDEXED | HIDDEN ] COLUMNS
         [ SIZE integer ]
    | COLUMNS [ SIZE integer ]
      { column | attribute } [ SIZE integer ]
        [ { column | attribute }
          [ SIZE integer ]
        ]...
    }
   ]...

```

## 参数解释

| 参数 | 描述 |
| --- | --- |
| schema | 指定表所属的 Schema。如果省略该参数，默认为当前 Schema。 |
| table_name | 指定要分析的表。 |
| PARTITION \| SUBPARTITION | 指定要收集统计信息的分区或子分区。如果指定的分区为一级分区，会同时分析该分区下所有子分区的信息。 |
| compute_statistics_clause | 指定 `COMPUTE STATISTICS` 可以计算分析对象的精确统计信息，并将其存储在数据字典中。分析表时，会同时统计表和列的统计信息。 |
| for_clause | 指定要分析整个表，或者只分析特定的列。   - `FOR TABLE`：指定仅收集表的统计信息。 - `FOR COLUMNS`：指定仅收集指定列和标量对象属性列的统计信息。其中，`attribute` 指定对象中的特定列名。 - `FOR ALL COLUMNS`：指定收集所有列和标量对象属性列的统计信息。 - `FOR ALL INDEXED COLUMNS`：指定收集所有索引列的列统计信息。列统计信息可以基于完整的列，也可以通过指定 `SIZE` 使用直方图。 - `FOR ALL HIDDEN COLUMNS`：指定收集所有隐藏列的列统计信息。列统计信息可以基于完整的列，也可以通过指定 `SIZE` 使用直方图。 - `SIZE`：指定直方图中的最大存储桶数。取值范围是 [1,2048]，默认值是 `75`。 |
| estimate_statistics_clause | 指定 `ESTIMATE STATISTICS` 可以估计分析对象的统计信息，并将其存储在数据字典中。 |
| SAMPLE | 指定用于估计统计信息使用的分析对象中的采样数据量。如果省略该参数，则对 `1064` 行进行采样。   - `ROWS`：对表中的 `integer` 行进行采样。 - `PERCENT`：对表中行的 `integer` 百分比进行采样。 |

## 示例

- 收集表 `tbl1` 的统计信息。

  ```sql
  obclient> ANALYZE TABLE tbl1 COMPUTE STATISTICS;
  Query OK, 0 rows affected

  ```
 - 收集表 `tbl1` 所有索引列的列统计信息。

  ```sql
  obclient> ANALYZE TABLE tbl1 COMPUTE STATISTICS FOR ALL INDEXED COLUMNS SIZE 100;
  Query OK, 0 rows affected

  ```

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
