OceanBase 数值类型的优先级
不同的数值数据类型在操作时有不同的优先级。在 OceanBase 中,BINARY_DOUBLE
的优先级最高,其次是 BINARY_FLOAT
,最后是 NUMBER
。
在对多个数值进行操作时:
- 若有一个操作数为
BINARY_DOUBLE
,OceanBase 会在执行该操作之前将所有操作数转换为BINARY_DOUBLE
。 - 若有一个操作数为
BINARY_FLOAT
,OceanBase 会在执行该操作之前将所有操作数转换为 BINARY_FLOAT
。 - 若有一个操作数都不是
BINARY_DOUBLE
和 BINARY_FLOAT
,OceanBase 会在执行该操作之前将所有操作数转换为 NUMBER
。 - 若所需要的转换失败,则该操作将失败。
- 与其他数据类型相比,数值数据类型的优先级低于日期时间与间隔数据类型,高于字符和所有其他数据类型。