0

这是我目前加入的:

INNER JOIN us_raw.l_dmw_order_report t1 on t2.channel_uid = t1.customer_id

但是,我需要它,所以它是这样的:

INNER JOIN us_raw.l_dmw_order_report t1 on t2.channel_uid = ('UNU' || t1.customer_id)

当我这样做时,它似乎并没有得到我需要的东西,所以我想知道是否有另一种方法可以做我想做的事情。基本上,t1 的 customer_id 是 t2 的 channel_uid,除了前面有一个“UNU”(是的,创建此表的 idk 但显然这是唯一的区别,我抽查确认)。

如果您需要更多信息,请告诉我,使用机密数据库。

谢谢,

4

2 回答 2

1

如果我理解正确,您想t2.channel_uid通过连接前缀UNUt1.customer_id列的值来构造值。如果是这种情况,以下应该有效:

INNER JOIN us_raw.l_dmw_order_report t1 on t2.channel_uid = CONCAT('UNU', t1.customer_id)

根据列的数据类型,您可能需要进行一些类型转换。

于 2020-03-02T18:27:23.617 回答
0

我能够通过强制加入子字符串来找到答案:

INNER JOIN l_act_account t2 ON customer_id = SUBSTRING(t2.channel_uid,4,18)

我没有尝试添加字符,而是强迫它忽略了包含字符 lol 的表

于 2020-03-02T21:54:08.637 回答