---
title: "CAST_FROM_BINARY_FLOAT - OceanBase 数据库 V4.3.0 | OceanBase 文档中心"
description: CAST_FROM_BINARY_FLOAT CAST_FROM_BINARY_FLOAT 函数用于以 RAW 的二进制形式返回 BINARY_FLOAT 值。 功能适用性 该内容仅适用于 OceanBase 数据库企业版。OceanBase 数据库社区版仅提供 MySQL 模式。 语法 UTL_RAW.CAST_F…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.3.0

# CAST_FROM_BINARY_FLOAT

更新时间：2026-04-10 11:58:36

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.3.0/zh-CN/700.reference/500.sql-reference/300.pl-reference/300.pl-oracle/1400.pl-system-package-oracle/27000.utl-raw-oracle/700.cast-from-binary-float-oracle.md)  

`CAST_FROM_BINARY_FLOAT` 函数用于以 `RAW` 的二进制形式返回 `BINARY_FLOAT` 值。

#### 功能适用性

该内容仅适用于 OceanBase 数据库企业版。OceanBase 数据库社区版仅提供 MySQL 模式。

## 语法

```sql
UTL_RAW.CAST_FROM_BINARY_FLOAT(
   n          IN BINARY_FLOAT,
   endianess  IN PLS_INTEGER DEFAULT 1)
RETURN RAW;

```

## 参数说明

| **参数** | **说明** |
| --- | --- |
| n | `BINARY_FLOAT` 值。 |
| endianess | 表示字节顺序的 `BINARY_INTEGER` 值。该函数可以识别的定义常量如下：   - 1： `big_endian` - 2：`little_endian` - 3：`machine_endian`   默认值为 `big_endian`。`machine_endian` 的设置与在大端机上的 `big_endian` 效果相同，或者与在小端机上的 `little_endian` 效果相同。 |

## 返回值

返回 `BINARY_FLOAT` 值的二进制表示形式（RAW）。

## 使用说明

- 如下列表为一个 4 字节的 `BINARY_FLOAT` 值与 IEEE 754 单精度格式的映射关系：

  ```sql
  byte 0: bit 31 ~ bit 24
  byte 1: bit 23 ~ bit 16
  byte 2: bit 15 ~ bit  8
  byte 3: bit 7 ~  bit  0

  ```
 - 参数 `endianess` 描述了 `BINARY_FLOAT` 的字节如何映射到 `RAW` 的字节，如下列矩阵所示。其中，`rb0 ~ rb3` 指的是 `RAW` 中的字节，而 `fb0 ~ fb3` 指的是 `BINARY_FLOAT` 中的字节。 | **Endianess** | **rb0** | **rb1** | **rb2** | **rb3** | | --- | --- | --- | --- | --- | | **big_endian** | fb0 | fb1 | fb2 | fb3 | | **little_endian** | fb3 | fb2 | fb1 | fb0 |
 - 对于 `machine-endian`，`BINARY_FLOAT` 参数的 4 个字节被直接复制到 `RAW` 返回值中。如果用户在大端机上传递了 `big_endian`，或者在小端机上传递了 `little_endian`，效果是一样的。

## 示例

```sql
obclient> SELECT UTL_RAW.CAST_FROM_BINARY_FLOAT(0) FROM DUAL;
+-----------------------------------+
| UTL_RAW.CAST_FROM_BINARY_FLOAT(0) |
+-----------------------------------+
| 00000000                          |
+-----------------------------------+
1 row in set

obclient> SELECT UTL_RAW.CAST_FROM_BINARY_FLOAT(1.234) FROM DUAL;
+---------------------------------------+
| UTL_RAW.CAST_FROM_BINARY_FLOAT(1.234) |
+---------------------------------------+
| 3F9DF3B6                              |
+---------------------------------------+
1 row in set

obclient> SELECT UTL_RAW.CAST_FROM_BINARY_FLOAT(-1.234) FROM DUAL;
+----------------------------------------+
| UTL_RAW.CAST_FROM_BINARY_FLOAT(-1.234) |
+----------------------------------------+
| BF9DF3B6                               |
+----------------------------------------+
1 row in set

```

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
