---
title: "SET_COLUMN_STATS - OceanBase 数据库 V4.5.0 | OceanBase 文档中心"
description: SET_COLUMN_STATS SET_COLUMN_STATS 过程用于设置列级的基本统计信息。 语法 DBMS_STATS.SET_COLUMN_STATS ( ownname VARCHAR2, tabname VARCHAR2, colname VARCHAR2, partname VARCHAR2 DEF…
---
切换语言

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

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

# SET_COLUMN_STATS

更新时间：2026-03-17 19:53:31

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.5.0/zh-CN/700.reference/600.pl-reference/200.pl-mysql/1000.pl-system-package-mysql/15900.dbms-stats-mysql/3500.set-column-stats-mysql.md)  

`SET_COLUMN_STATS` 过程用于设置列级的基本统计信息。

## 语法

```sql
DBMS_STATS.SET_COLUMN_STATS (
  ownname         VARCHAR2,
  tabname         VARCHAR2,
  colname         VARCHAR2,
  partname        VARCHAR2 DEFAULT NULL,
  distcnt         NUMBER DEFAULT NULL,
  density         NUMBER DEFAULT NULL,
  nullcnt         NUMBER DEFAULT NULL,
  avgclen         NUMBER DEFAULT NULL,
  no_invalidate      BOOLEAN DEFAULT FALSE,
  force              BOOLEAN DEFAULT FALSE);

```

## 参数解释

| 参数 | 解释 |
| --- | --- |
| ownname | 用户名。如果用户名设置为 `NULL`，会默认使用当前登录用户名。 |
| tabname | 此列所属的表的名称。 |
| colname | 列名或扩展名。 |
| partname | 存储统计信息的表分区的名称。如果表已分区且 `partname` 为 `NULL`，则统计信息存储在全局表级别。 |
| distcnt | 列级的 NDV 值。 |
| density | 列级的稠密度。如果此值为 `NULL` 且 `distcnt` 不为 `NULL`，则密度值为 `distcnt`。 |
| nullcnt | 列级的 `NULL` 值个数。 |
| avgclen | 列级的平均长度（以字节为单位）。 |
| no_invalidate | 收集统计信息是否刷 Plan Cache。设置为 `TRUE` 表示收集统计信息时不刷 Plan Cache。 |
| force | 是否强制收集，并忽略锁的状态。默认为 `FALSE`。如果设置为 `TRUE`，即使统计信息被锁定，也会收集统计信息。 |

## 异常情况

| 错误码 | 描述 |
| --- | --- |
| HY000 | - 该对象不存在或权限不足。 - 无效或不一致的值。 - 该对象的统计信息被锁定。 |

## 使用说明

OceanBase 数据库当前版本在处理用户自定义统计信息时，`SET_COLUMN_STATS` 指定的统计信息类型只能是存储在字典中的类型。如果此统计类型为 `NULL`，则存储与索引或列关联的统计类型。

要调用此过程，必须是表的所有者。对于由 `SYS` 所拥有的对象，需要是表的所有者或具有 `SYSDBA` 权限才能调用此过程。

## 示例

设置用户 `testUser01` 的表 `tbl1` 的 `col1` 列的 NDV 为 10，`NULL` 值个数为 10。

```sql
obclient> CALL DBMS_STATS.SET_COLUMN_STATS('testUser01', 'tbl1', 'col1', distcnt=>10, nullcnt=>10);
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) 咨询热线
