数値の優先順位
式の結果の型は、型の優先順位が最も高いオペランドによって決定されます。たとえば、TT_INTEGER型とBINARY_FLOAT型のSUMは、BINARY_FLOAT型になります。これは、BINARY_FLOATのほうがTT_INTEGERより数値の優先順位が高く設定されているためです。同様に、NUMBER型とBINARY_DOUBLE型の積はBINARY_DOUBLE型になります。これは、BINARY_DOUBLE型の優先順位がNUMBER型より高いためです。
数値の優先順位は次のとおりです(高い順位から低い順位へ)。
- BINARY_DOUBLE
- BINARY_FLOAT
- NUMBER
- TT_BIGINT
- TT_INTEGER
- TT_SMALLINT
- TT_TINYINT