sql - 如何在阿里巴巴MaxCompute中连接(等于)两个分别属于String和Double类型的数据列?
问题描述
我无权分享表格详细信息。
例如,让我考虑一个例子:
我正在尝试在阿里巴巴MaxCompute中分别加入两列String和Double数据类型。
在MaxCompute的早期版本中,String和Double数据类型转换为bigint数据类型是牺牲精度的。1.1 = 连接条件中的“1”。
而相同的代码在新版本的 MaxCompute 中不可用。代码语法如下:
SELECT * FROM t1 JOIN t2 ON t1.double_value = t2.string_value;
错误:
WARNING:[1,48] implicit conversion from STRING to DOUBLE, potential data loss, use CAST function to suppress
阿里巴巴MaxCompute V2中join操作的正确语法是什么?
解决方案
正如错误消息所示:
SELECT *
FROM t1 JOIN
t2
ON CAST(t1.double_value as string) = t2.string_value;
推荐阅读
- python - 为图文配对数据构建 TfRecord
- c++ - AVX2:分配给 __m256i 类成员时出现分段错误
- sqlplus - 使用 ACCEPT 命令示例
- javascript - 使用 Cordova 通过服务器提供商连接到 mysql
- python-3.x - 创建动态字典名称
- reactjs - NavBar 在 Reactjs 中不工作 MDBootstrap
- sql - 将多值依赖项放在自己的表中但感到困惑
- php - 如何使用 php 从这样的 html 响应中选择元素?
- python - 我有一个 xpath 列表,如何在不同的选项卡中打开它们中的每一个?
- java - Java.lang.IllegalStateException:提交响应后无法调用 sendRedirect()