ROUTINE_COLUMNS
重要
此功能目前以公共预览版提供。
适用于: Databricks SQL Databricks Runtime 11.3 LTS 及更高版本 仅 Unity Catalog
INFORMATION_SCHEMA.ROUTINE_COLUMNS 会列出目录中表值函数的结果列。
返回的行仅限于用户有权与之交互的例程。
此关系是 SQL 标准信息架构的扩展。
定义
ROUTINE_COLUMNS
关系包含以下列:
名称 | 数据类型 | Nullable | 说明 |
---|---|---|---|
SPECIFIC_CATALOG |
STRING |
否 | 包含例程的目录。 |
SPECIFIC_SCHEMA |
STRING |
否 | 包含例程的数据库(架构)。 |
SPECIFIC_NAME |
STRING |
否 | 例程架构唯一(特定)名称。 |
ORDINAL_POSITION |
INTEGER |
否 | 列在结果列列表中的位置(从 1 开始)。 |
COLUMN_NAME |
STRING |
是 | 列的名称,如果未命名,则为 NULL 。 |
DATA_TYPE |
STRING |
否 | 参数数据类型名称。 |
FULL_DATA_TYPE |
STRING |
否 | 参数数据类型定义,例如 'DECIMAL(10, 4)' 。 |
CHARACTER_MAXIMUM_LENGTH |
INTEGER |
是 | 始终为 NULL ,保留以供将来使用。 |
CHARACTER_OCTET_LENGTH |
STRING |
是 | 始终为 NULL ,保留以供将来使用。 |
NUMERIC_PRECISION |
INTEGER |
是 | 对于 base-2 整数类型、FLOAT 和 DOUBLE ,为支持的位数。 对于 DECIMAL ,为位数;否则为 NULL 。 |
NUMERIC_PRECISION_RADIX |
INTEGER |
否 | 对于 DECIMAL ,为 10;对于所有其他数字类型,为 2;否则为 NULL 。 |
NUMERIC_SCALE |
INTEGER |
是 | 对于整数类型,为 0;对于 DECIMAL ,为小数点右侧的位数;否则为 NULL 。 |
DATETIME_PRECISION |
INTEGER |
是 | 对于 DATE ,为 0;对于 TIMESTAMP 和 INTERVAL … SECOND ,为 3;对于其他任何 INTERVAL ,为 0;否则为 NULL 。 |
INTERVAL_TYPE |
STRING |
是 | 对于 INTERVAL ,为间隔的单位部分,例如 'YEAR TO MONTH' ;否则为 NULL 。 |
INTERVAL_PRECISION |
INTERAL |
是 | 始终为 NULL ,保留以供将来使用。 |
MAXIMUM_CARDINALITY |
INTEGER |
是 | 始终为 NULL ,保留以供将来使用。 |
PARAMETER_DEFAULT |
STRING |
是 | 始终为 NULL ,保留以供将来使用。 |
COMMENT |
STRING |
是 | 描述结果列的可选注释。 |
约束
以下约束适用于 ROUTINE_COLUMNS
关系:
类 | 名称 | 列列表 | 描述 |
---|---|---|---|
主密钥 | RTN_COLS_PK |
SPECIFIC_CATALOG ,SPECIFIC_SCHEMA ,SPECIFIC_NAME ,ORDINAL_POSITION |
唯一标识结果列。 |
外键 | RTN_COLS_ROUTINES_FK |
SPECIFIC_CATALOG ,SPECIFIC_SCHEMA ,SPECIFIC_NAME |
引用 ROUTINES |
示例
> SELECT column_name, data_type
FROM information_schema.routine_columns
WHERE specific_schema = 'default'
AND specific_name = 'foo'
ORDER BY ordinal_position;