異なる数値データ型は、演算時に異なる優先順位を持ちます。本記事では、OceanBaseデータベースの数値データ型の優先順位ルールと注意点について説明します。
OceanBaseデータベースでは、BINARY_DOUBLE の優先順位が最も高く、次いで BINARY_FLOAT、NUMBER の優先順位が最も低いです。
複数の異なるデータ型の数値を操作する場合、変換ルールは以下のとおりです:
演算子のうち1つが
BINARY_DOUBLEの場合、OceanBaseデータベースはその操作を実行する前にすべての演算子をBINARY_DOUBLEに変換します。演算子のうち1つが
BINARY_FLOATであり、他のどの演算子もBINARY_DOUBLEでない場合、OceanBaseデータベースはその操作を実行する前にすべての演算子をBINARY_FLOATに変換します。すべての演算子が
BINARY_DOUBLEおよびBINARY_FLOATでない場合、OceanBaseデータベースはその操作を実行する前にすべての演算子をNUMBERに変換します。注意
- 必要なデータ型への変換に失敗した場合、その操作は失敗します。
- 他のデータ型と比較して、数値データ型の優先順位は日付時刻・間隔データ型よりも低く、文字およびその他すべてのデータ型よりも高いです。