0

我无权分享表格详细信息。

例如,让我考虑一个例子:

我正在尝试在阿里巴巴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操作的正确语法是什么?

4

2 回答 2

0

正如错误消息所示:

SELECT *
FROM t1 JOIN
     t2
     ON CAST(t1.double_value as string) = t2.string_value;
于 2018-12-30T12:13:41.427 回答
0

我做了一些挖掘,似乎这个 SQL 命令是解决这个问题的推荐方法。

select * from t1 join t2 on t.double_value = cast(t2.string_value as double);
于 2018-12-30T17:10:24.287 回答