本主题列举用于算术运算的隐式 CAST(强制类型转换)。
算术运算符(+、-、* 和 /)通常用于计算相同数据类型的操作数,并返回与操作数类型相同的值。下表显示了可接受操作数的数据类型彼此不同,或者结果值的数据类型不同于操作数类型的情况。
左操作数数据类型 | 右操作数数据类型 | 支持的运算符 | 结果数据类型 |
---|---|---|---|
INTEGER | FLOAT | +, -, *, / | FLOAT1 |
INTEGER | DECIMAL | +, -, *, / | DECIMAL1 |
INTEGER | INTERVAL | * | INTERVAL4 |
FLOAT | INTEGER | +, -, *, / | FLOAT1 |
FLOAT | DECIMAL | +, -, *, / | FLOAT1 |
FLOAT | INTERVAL | * | INTERVAL4 |
DECIMAL | INTEGER | +, -, *, / | DECIMAL1 |
DECIMAL | FLOAT | +, -, *, / | FLOAT1 |
DECIMAL | INTERVAL | * | INTERVAL4 |
TIME | TIME | - | INTERVAL2 |
TIME | GMTTIME | - | INTERVAL2 |
TIME | INTERVAL | +, - | TIME3 |
GMTTIME | TIME | - | INTERVAL2 |
GMTTIME | GMTTIME | - | INTERVAL2 |
GMTTIME | INTERVAL | +, - | GMTTIME3 |
DATE | DATE | - | INTERVAL2 |
DATE | INTERVAL | +, - | DATE3 |
TIMESTAMP | TIMESTAMP | - | INTERVAL2 |
TIMESTAMP | GMTTIMESTAMP | - | INTERVAL2 |
TIMESTAMP | INTERVAL | +, - | TIMESTAMP3 |
GMTTIMESTAMP | TIMESTAMP | - | INTERVAL2 |
GMTTIMESTAMP | GMTTIMESTAMP | - | INTERVAL2 |
GMTTIMESTAMP | INTERVAL | +, - | GMTTIMESTAMP3 |
INTERVAL | INTEGER | *, / | INTERVAL4 |
INTERVAL | FLOAT | *, / | INTERVAL4 |
INTERVAL | DECIMAL | *, / | INTERVAL4 |
INTERVAL | TIME | + | TIME3 |
INTERVAL | GMTTIME | + | GMTTIME3 |
INTERVAL | DATE | + | DATE3 |
INTERVAL | TIMESTAMP | + | TIMESTAMP3 |
INTERVAL | GMTTIMESTAMP | + | GMTTIMESTAMP3 |
注:
|