0

我有一个字符串写成 8 字节双精度数字,小端序,想用 float64 转换它,以便 BigQuery 可以将其作为数字处理。

# example
from: hex(little endian): EC51B81E852B4340

to: float64: 38.34

有没有一个聪明的解决方案?

谢谢你。

4

1 回答 1

1

我只有第一步,您可以求助于 JavaScript 功能。我搜索但没有找到可以直接从 BigQuery 引用的库。您必须找到一个库并将其上传到 GCS以引用它。我还发现了一些代码片段来执行字节-> 双重编码,但不确定它们的质量。

CREATE TEMP FUNCTION hex_to_float(x BYTES) RETURNS FLOAT64
LANGUAGE js
AS """
  // Call a JS library to translate byte array to double
""";

SELECT hex_to_float(FROM_HEX('EC51B81E852B4340'));
于 2021-02-05T08:33:04.940 回答