DISTINCT 类型是从源类型(称为基本类型)派生的数据类型。
DISTINCT 类型继承其源类型在磁盘上的长度和对齐方式。因此,DISTINCT 类型高效地使用数据库服务器预先存在的功能。
创建 DISTINCT 数据类型时,数据库服务器将自动创建两种显式强制转型:一种从 DISTINCT 类型强制转型为其源类型,另一种是从源类型强制转型为 DISTINCT 类型。基于内置源类型的 DISTINCT 类型不继承为内置类型提供的内置强制转型。但是,DISTINCT 类型却继承已对源类型定义的任何用户定义的强制转型。
DISTINCT 类型不能直接与其源类型进行比较。要比较这两种类型,首先必须显式地将一种类型强制转型为另一种类型。
有关上面提到的 SQL 语句的更多信息,请参阅 GBase 8s SQL 指南:语法。有关对 DISTINCT 数据类型强制转型的信息,请参阅单值类型的强制转型。有关显示如何创建和注册 DISTINCT 类型的强制转型函数的示例,请参阅《GBase 8s 数据库设计和实现指南》。
基本类型为内置字符类型的 DISTINCT 类型的声明中的大小规范可受字符类型声明中的逻辑字符语义一节中描述的 SQL_LOGICAL_CHAR 功能影响。