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

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

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

# ANALYZE

更新时间：2026-07-16 19:52:04

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.4.2/zh-CN/700.reference/500.sql-reference/100.sql-syntax/300.common-tenant-of-oracle-mode/900.sql-statement-of-oracle-mode/300.dcl-of-oracle-mode/100.analyze-of-oracle-mode.md)  

## 描述

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

## 语法

```sql
ANALYZE
  TABLE [ schema. ]table_name
    [ PARTITION (partition) | SUBPARTITION (subpartition) ]
  { COMPUTE STATISTICS [ for_clause ]
  | ESTIMATE STATISTICS [ for_clause ]
      [ SAMPLE integer { ROWS | PERCENTAGE } ]
  }

for_clause:
  FOR TABLE
  | ALL COLUMNS
  | COLUMNS column [, column]...

```

## 参数解释

| 参数 | 描述 |
| --- | --- |
| 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` 百分比进行采样。 |

## 示例

- 创建员工信息表并收集统计信息。

  ```sql
  -- 创建部门表
  CREATE TABLE departments (
    dept_id     NUMBER(4) PRIMARY KEY,
    dept_name   VARCHAR2(30) NOT NULL,
    location    VARCHAR2(50)
  );

  -- 创建员工表
  CREATE TABLE employees (
    emp_id      NUMBER(6),
    emp_name    VARCHAR2(50) NOT NULL,
    job_title   VARCHAR2(50),
    manager_id  NUMBER(6),
    hire_date   DATE,
    salary      NUMBER(8,2),
    dept_id     NUMBER(4) NOT NULL,
    email       VARCHAR2(100),
    CONSTRAINT pk_employees PRIMARY KEY (emp_id, dept_id),
    CONSTRAINT fk_dept FOREIGN KEY (dept_id)
      REFERENCES departments(dept_id)
  ) PARTITION BY RANGE (dept_id) (
    PARTITION p_dept_10 VALUES LESS THAN (20),
    PARTITION p_dept_20 VALUES LESS THAN (30),
    PARTITION p_dept_other VALUES LESS THAN (MAXVALUE)
  );
  -- 创建索引
  CREATE INDEX idx_emp_dept ON employees(dept_id);
  CREATE INDEX idx_emp_name ON employees(emp_name);

  -- 收集员工表的完整统计信息
  ANALYZE TABLE employees COMPUTE STATISTICS;

  -- 收集部门表的完整统计信息
  ANALYZE TABLE departments COMPUTE STATISTICS;

  ```
 - 收集特定分区的统计信息。

  ```sql
  -- 只收集部门ID小于20的分区统计信息
  ANALYZE TABLE employees PARTITION(p_dept_10) COMPUTE STATISTICS;

  ```
 - 收集特定列的统计信息。

  ```sql
  -- 只收集薪资和入职日期的统计信息
  ANALYZE TABLE employees COMPUTE STATISTICS
  FOR COLUMNS salary, hire_date;

  ```
 - 使用采样方式收集统计信息。

  ```sql
  -- 采样1000行数据收集统计信息
  ANALYZE TABLE employees ESTIMATE STATISTICS
  SAMPLE 1000 ROWS;

  -- 采样5%的数据收集统计信息
  ANALYZE TABLE employees ESTIMATE STATISTICS
  SAMPLE 5 PERCENTAGE;

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

  ```sql
  -- 收集所有索引列的统计信息，设置直方图桶数为150
  ANALYZE TABLE employees COMPUTE STATISTICS
  FOR ALL INDEXED COLUMNS SIZE 150;

  ```
 - 收集所有列的统计信息。

  ```sql
  -- 收集所有列的统计信息
  ANALYZE TABLE employees COMPUTE STATISTICS
  FOR ALL COLUMNS SIZE 100;

  ```
 - 收集特定列的直方图统计信息。

  ```sql
  -- 为薪资列收集更详细的直方图统计
  ANALYZE TABLE employees COMPUTE STATISTICS
  FOR COLUMNS SIZE 254 salary;

  ```

 上一篇 下一篇 ![有帮助](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) 咨询热线
