Alibaba MaxCompute如何Join(equal)两个分别属于String和Double类型的数据列?

How to Join (equal) two data columns that belongs to the String and Double types respectively in Alibaba MaxCompute?

我无权分享 table 详细信息。

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

我想在Alibaba 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

在 Alibaba MaxCompute V2 中进行连接操作的正确语法是什么?

如错误信息所示:

SELECT *
FROM t1 JOIN
     t2
     ON CAST(t1.double_value as string) = t2.string_value;

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

select * from t1 join t2 on t.double_value = cast(t2.string_value as double);